【发布时间】:2019-11-07 17:04:05
【问题描述】:
我使用 Ubuntu 18.04,我想在 python 脚本中阅读我的日记。 作为用户,我可以使用命令阅读日志
journaltctl -f -u foo.service
我想用python读取最后一行:
第一次尝试:
$ python
>>> from systemd import journal
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'systemd'
好的,我当然需要 API:
$ sudo apt install python-systemd
$ python
>>> from systemd import journal
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'journal'
从这里,我无法弄清楚为什么它不起作用。
第三次尝试:
$ sudo python
>>> from systemd import journal
>>>
好的,这似乎是一个权限问题。然后我将当前用户添加到systemd-journal 组:
$ sudo usermod -aG systemd-journal user
<logout/login>
$ groups user
user : user adm cdrom sudo dip plugdev systemd-journal lpadmin sambashare docker
然后
$ python
>>> from systemd import journal
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'journal'
请注意,为了访问系统日志,非 root 用户必须具有必要的权限,详情请参阅 journalctl(1)。非特权用户只能访问自己的日志。
所以至少我希望能够导入journal 模块并阅读user 日志?
【问题讨论】: