9.3. 使用命令行查看日志


Journal 是 systemd 的一个组件,可帮助查看和管理日志文件。它解决了与传统日志记录相关的问题,与系统的其余部分紧密集成,并且支持各种日志记录技术以及日志文件的访问管理。

您可以通过命令行,使用 journalctl 命令查看系统日志中的信息,例如:

$ journalctl -b | grep kvm
May 15 11:31:41 localhost.localdomain kernel: kvm-clock: Using msrs 4b564d01 and 4b564d00
May 15 11:31:41 localhost.localdomain kernel: kvm-clock: cpu 0, msr 76401001, primary cpu clock
...
表 9.1. 查看系统信息
命令描述

journalctl

显示所有收集的日志条目。

journalctl FILEPATH

显示与特定文件相关的日志。例如: journalctl /dev/sda 命令显示与 /dev/sda 文件系统相关的日志。

journalctl -b

显示当前引导的日志。

journalctl -k -b -1

显示当前引导的内核日志。

表 9.2. 查看有关特定服务的信息
命令描述

journalctl -b _SYSTEMD_UNIT=<name.service>

过滤日志以显示与 systemd 服务匹配的条目。

journalctl -b _SYSTEMD_UNIT=<name.service> _PID=<number>

合并匹配。例如,这个命令显示与<name.service> 和 PID <number> 匹配的 systemd-units 的日志。

journalctl -b _SYSTEMD_UNIT=<name.service> _PID=<number> + _SYSTEMD_UNIT=<name2.service>

加号(+)分隔符将两个表达式按逻辑 OR 组合在一起。例如,这个命令显示来自带有 PID<name.service> 服务进程的所有消息,加上来自 <name2.service> 服务(来自其任何进程)的所有消息。

journalctl -b _SYSTEMD_UNIT=<name.service> _SYSTEMD_UNIT=<name2.service>

此命令显示与引用同一字段的任一表达式匹配的所有条目。在这里,这个命令会显示与 systemd-unit <name.service> 或 systemd-unit <name2.service> 匹配的日志。

表 9.3. 查看与特定引导相关的日志
命令描述

journalctl --list-boots

显示引导号、其 ID 以及与引导相关的第一条和最后一个消息的时间戳列表。您可以在下一个命令中使用 ID 来查看详细信息。

journalctl --boot=ID _SYSTEMD_UNIT=<name.service>

显示有关指定的引导 ID 的信息。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.