Ala*_*a S 8 server sshd systemd systemd-journald
我目前正在 Ubuntu 20.04 机器上工作。当我运行命令时journalctl -u sshd.service,我收到以下响应。
-- Logs begin at Wed 2022-12-21 13:01:52 UTC, end at Fri 2023-03-31 15:10:32 UTC
-- No entries -- .
Run Code Online (Sandbox Code Playgroud)
但是,当我运行时journalctl -u ssh.service,我会获取日志条目。由于sshd.service和ssh.service是不同的 systemd 单元,为什么它不提供任何journalctl -u sshd.service命令条目?
至少在默认的 Ubuntu + OpenSSH 实现中,sshd.service并且ssh.service实际上不是不同的单元 - 前者是后者的别名[Install],在其单元文件的部分中定义/lib/systemd/system/ssh.service:
[Install]
WantedBy=multi-user.target
Alias=sshd.service
Run Code Online (Sandbox Code Playgroud)
DESCRIPTION此类别名将在部分讨论man systemd.unit,并且本质上是通过创建符号链接来工作的 - 在本例中,
$ ls -l /etc/systemd/system/sshd.service
lrwxrwxrwx 1 root root 31 Feb 16 2022 /etc/systemd/system/sshd.service -> /lib/systemd/system/ssh.service
Run Code Online (Sandbox Code Playgroud)
systemctl允许您通过使用ssh.service, 或sshd.service(甚至只是ssh或)来启动/停止/查询服务的状态sshd。
因此,您所观察到的是,journalctl显然无法解析这些 systemd 别名 - 在Issue #11846:Journalctl 与 Systemd Alias 一起工作(在安装部分)以及相关的(但没有得到令人满意的回答)中,有一些关于为什么以及是否应该解析的讨论。我们兄弟网站上的问题,如何将 systemd 别名与journalctl 一起使用?
| 归档时间: |
|
| 查看次数: |
999 次 |
| 最近记录: |