Systemd
儘管 Storage=persistent,systemd-journald 系統日誌在引導過程中並不持久
我最近遇到了一個問題,systemd 沒有保留以前引導的日誌。我在這里和其他地方檢查了幾個答案,但沒有找到解決方案。
問題是使用者日誌在引導過程中保持不變,但係統日誌不是
/etc/systemd/journald.conf
[Journal] Storage=persistent SystemMaxUse=500M SystemMaxFiles=5
journalctl -b -1
[root@2ba2de9e /var/log/journal] # journalctl --system -b -1 Data from the specified boot (-1) is not available: No such boot ID in journal
我在一些樹莓派上使用archlinux arm
版本
4.14.24-1-ARCH
systemd 237.64-1
systemd-sysvcompat 237.64-1
任何人都知道為什麼會發生這種情況?在我的台式機上,這可以正常工作嗎?
由於磁碟空間不足,journald 可能正在刪除舊日誌。(您沒有提到啟動後多久
-b -1
不工作,所以我不知道您當時是否有很多目前啟動的日誌。)您已
SystemMaxUse=500M
配置,但如果您沒有太多可用磁碟空間,journald 可能會決定使用少於 500MB 的空間。還有一個SystemKeepFree=...
設置,預設為文件系統大小的 15%(或 4GB,無論哪個更小),journald 會比您允許的空間更嚴格地執行該限制。如果您/var/log/journal
的分區很緊,也許這可能是問題的一部分。您可以使用一些命令來檢查 journald 正在使用多少空間,例如:
$ journalctl --disk-usage
您還可以查看 journald 知道的靴子數量(以及它們的時間和 ID):
$ journalctl --list-boots
這些也可能有助於闡明您的問題…
我希望這有幫助!