我们遇到了客户 RedHat 7 PC 间歇性关闭的问题。
刚刚有一台送去维修,我想检查一下 journald 的输出。
但是,我读到重新启动系统会覆盖它。
如何在不重启系统的情况下查看此日志?我需要可启动的 RedHat 或 Centos USB 吗?如果需要,如何创建它?然后我如何查看驱动器/文件?
答案1
如果它已经被关闭,你就没有运气了。默认情况下,CentOS 7/8 上的 Journald 将日志数据存储在 RAM 中。
你可以确保 Journald 以持久模式记录数据,只需创建/var/log/journal
:
# create the directory
mkdir -p /var/log/journal
# ensure the write permissions
systemd-tmpfiles --create --prefix /var/log/journal
# ping the daemon that the directory is there
killall -USR1 systemd-journald
但这适用于当前启动的机器,进一步重启将保留数据。
答案2
通常,数据存储在/var/log
目录中。要配置日志记录详细信息,请参阅:
https://www.freedesktop.org/software/systemd/man/journald.conf.html
设置Storage=persistent
将确保数据写入磁盘。
可以使用以下值来控制大小限制:
SystemMaxUse=, SystemKeepFree=, SystemMaxFileSize=, SystemMaxFiles=, RuntimeMaxUse=, RuntimeKeepFree=, RuntimeMaxFileSize=, RuntimeMaxFiles=
然后可以使用 读取和搜索文件journalctl
。
答案3
您可以在 /etc/systemd/journald.conf 中编辑配置文件并进行 make storage=persistant
,然后它会将所有日志存储在其中 /var/log/journal
。