Answers:
尝试使用以下命令从systemctl查看日志:
journalctl -u sshd |tail -100
-f
选项来跟踪日志:journalctl -fu sshd
apache2
而RedHat调用它httpd
)。
我已经在“ journalctl”中找到了sshd和其他核心服务的输出。
在systemd的Arch Wiki条目中查看更多信息:
您应该能够sshd
使用以下方法过滤消息:
journalctl -u ssh
或(取决于您的分布)
journalctl -u sshd
它将以less
样式格式显示日志(您可以搜索/
,通过PgUp,PgDown等导航)。
-e
将您带到日志结尾。-u
参数通过_SYSTEMD_UNIT
(至少在Debian上)设置为的元字段进行过滤ssh.service
,因此sshd
不匹配。-f
实时跟踪日志-n 100
显示给定的行数(对有用-f
)另外,您可以使用元字段过滤:
journalctl _COMM=sshd
您可以通过导出为JSON来显示带有所有元字段的整个日记记录:
journalctl -u ssh -o json-pretty
那会给你类似的东西:
...
"_PID" : "7373",
"_COMM" : "sshd",
"_EXE" : "/usr/sbin/sshd",
"_SYSTEMD_CGROUP" : "/system.slice/ssh.service",
"_SYSTEMD_UNIT" : "ssh.service",
...
如果您想知道如何仅显示内核消息:
journalctl -k -f
journalctl _COMM=sshd
)有解释吗?
-u
过滤_SYSTEMD_UNIT
Debian上设置为的元数据字段ssh.service
。所有以下划线开头的参数都在访问metafiels。您可以通过类似的方式通过_PID
或进行过滤_TRANSPORT
。
查看您的syslog配置。大多数probalby /etc/syslog.conf
或/etc/rsyslog.conf
您应该auth
在例如我的配置中查找行:
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
authpriv.* /var/log/secure
文件内部 /etc/rsyslog.conf
journalctl _COMM=sshd
可以。