如何在 journalctl 中转义程序名称

如何在 journalctl 中转义程序名称

我的系统崩溃了,我试图通过查看日志来确定发生了什么。我想过滤导致错误的不同程序的日志。为此,我尝试了:

my_username@pop-os:~$ journalctl -u pop-os\ kernel
Invalid unit name "pop-os kernel" escaped as "pop-os\x20kernel" (maybe you should use systemd-escape?).
-- No entries --

我该如何正确搜索pop-os kernel

答案1

-u选项指定系统单元名称,而不是程序名称。例如,-u named将显示所有来自的消息,named.service无论它们被标记为什么程序名称。如果您不知道相应的单元(或者没有单元),请使用该-t选项。

此外,当您看到类似这样的行时Dec 28 14:38:06 pop-os kernel:,程序名称就是kernel,而不是pop-os kernel- 日期后面的字段是系统主机名,不是程序名称的一部分。因此正确的搜索查询应该是-t kernel

(但是如果您尝试使用 journalctl 作为 dmesg 的替代品,最好使用该-k选项获取从内核缓冲区获取的所有消息。)

相关内容