读取 .journal 文件内容的命令?

读取 .journal 文件内容的命令?

嗯,答案很简单 - 使用命令“journalctl”。

但让我先描述一下问题,

我遇到了 ubuntu 服务器崩溃事件,并且成功提取了一些 log/.journal 文件,处理此事件的下一个方法是读取/分析这些文件。

正在讨论 2 个请求:

A. Windows环境下如何读取.journal文件

B. 使用 Windows 操作系统以外的其他方式读取 .journal 文件

第一个是最重要的请求,但我跳过了它,因为它看起来太困难了,使用另一个 ubuntu 主机和命令“journalctl --file /path_to_the_file”可以完美解决目标。(并且还可以通过“将内容导出到 .txt 文件” >”符号)

现在我发现,当使用命令“cat”读取 .journal 文件时和之后,控制台显示屏上会出现乱码,我别无选择,只能重新启动以清除混乱。

命令“vi”也不起作用。

那么,命令“journalctl”是正常浏览.journal文件的唯一且直接的方法吗?

答案1

现在我发现当使用命令“cat”读取.journal文件时和之后,控制台显示屏上会出现乱码

的确。这是一个二进制文件

我别无选择,只能重新启动以清除混乱。

这是不正确的。您通常可以使用Control-j, reset, Control-j组合来解决此问题(请参阅这里有关这些情况下“终端混乱”的更多详细信息),或者只是打开一个新终端。

那么,命令“journalctl”是正常浏览.journal文件的唯一且直接的方法吗?

由于它是二进制文件,唯一的选择是使用可以解析该二进制格式的程序。这就是journalctl 开箱即用的功能。或者,您可以使用自定义脚本:例如,在 Python 中,您可以使用 systemd.journal 库(https://stackoverflow.com/questions/26331116/reading-systemd-journal-from-python-script),尽管我不确定它是否可以移植到 Windows。

您还可以选择不同的方法:将文件复制到某个地方(虚拟机,甚至 Linux 容器可能就足够了),然后运行journalctl -D <path to exported journal>​​.

相关内容