linxu 查看运行日志

journalctl — 检索 systemd 日志html

journalctl 可用于检索 systemd(1) 日志(由 systemd-journald.service(8) 记录)。less

 

若是不带任何参数直接调用此命令, 那么将显示全部日志内容(从最先一条日志记录开始)。工具

若是指定了 [MATCHES...] 参数, 那么输出的日志将会按照 [MATCHES...] 参数进行过滤。 MATCHE 必须符合 "FIELD=VALUE" 格式 (例如 "_SYSTEMD_UNIT=httpd.service" ), 参见 systemd.journal-fields(7) 手册以了解日志字段的详细介绍。 若是有多个不一样的字段被 [MATCHES...] 参数匹配, 那么这些字段之间使用"AND"逻辑链接, 也就是,日志项必须同时知足所有字段的匹配条件才能被输出。 若是同一个字段被多个 [MATCHES...] 参数匹配, 那么这些匹配条件之间使用"OR"逻辑链接, 也就是对于同一个字段,日志项只需知足任意一个匹配条件便可输出。 最后, "+" 字符可用做 [MATCHES...] 组之间的分隔符,并被视为使用"OR"逻辑链接。 也就是,MATCHE1 MATCHE2 + MATCHE3 MATCHE4 MATCHE5 + MATCHE6 MATCHE7 至关于 ( MATCHE1 MATCHE2 ) OR ( MATCHE3 MATCHE4 MATCHE5 ) OR ( MATCHE6 MATCHE7 )spa

还可使用绝对路径做为参数来过滤日志。 绝对路径能够是普通文件,也能够是软链接, 但必须指向一个确实存在的文件。 若是路径指向了一个二进制可执行文件, 那么它实际上至关因而一个对 "_EXE=" 字段的匹配(仅匹配完整的绝对路径)。 若是路径指向了一个可执行脚本, 那么它实际上至关因而一个对 "_COMM=" 字段的匹配(仅匹配脚本的文件名)。 若是路径指向了一个设备节点, 那么它实际上至关因而一个对 "_KERNEL_DEVICE=" 字段的匹配(匹配该设备及其全部父设备的内核设备名称)。 在查询时, 软链接会被追踪到底,内核设备名称将被合成, 父设备将按照当时的实际状况被提列出来。 由于日志项通常并不包含标记实际物理设备的字段, 因此,设备节点通常就是实际物理设备的最佳表明。 可是又由于设备节点与物理设备之间的对应关系在系统重启以后可能会发生变化, 因此,根据设备节点过滤日志仅对本次启动有意义, 除非你能确认对应关系在重启以后保持不变。日志

可使用 --boot--unit= 等选项 进一步附加额外的约束条件(至关于使用"AND"逻辑链接)。code

最终的输出结果来自全部可访问的日志文件的综合, 不管这些日志文件是否正在滚动或者正在被写入, 也不管这些日志文件是属于系统日志仍是用户日志, 只要有访问权限,就会被包括进来。htm

用于提取日志的日志文件的集合可使用 --user--system--directory--file 选项进行筛选。ci

每一个用户均可以访问其专属的用户日志。 可是默认状况下, 只有root用户以及 "systemd-journal", "adm", "wheel" 组中的用户才能够访问所有的日志(系统与其余用户)。 注意,通常发行版还会给 "adm" 与 "wheel" 组一些其余额外的特权。 例如 "wheel" 组的用户通常均可以执行一些系统管理任务。get

默认状况下,结果会经过 less 工具进行分页输出, 而且超长行会在屏幕边缘被截断。 不过,被截掉的部分能够经过左右箭头按键查看。 若是不想分页输出,那么可使用 --no-pager 选项,参见下面的"环境变量"小节。it

若是是输出到 tty 的话,行的颜色还会根据日志的级别变化: ERROR 或更高级别为红色,NOTICE 或更高级别为高亮,其余级别则正常显示。

 

经常使用命令 

 

journalctl -xe

打印从2019-08-22 11:00:00后面的日志

journalctl --since "2019-08-22 11:00:00"

 

参考文献: http://www.jinbuguo.com/systemd/journalctl.html

相关文章
相关标签/搜索