3.7 KiB
3.7 KiB
看log
Raspberry Pi 4沒有/var/log/syslog,要使用journalctl。
journalctl
Or
journalctl | grep SOMETHING
看系統訊息
journalctl -p 0
Error code意思
0: 紧急情况
1: 警报
2: 危急
3: 错误
4: 警告
5: 通知
6: 信息
7:调试
看開機log
journalctl --list-boots
- 第一個數字顯示的是journald 的唯一的啟動追蹤號碼,你可以在下一個命令中使用它來分析該特定的啟動。
- 第二個數字是啟動ID,你也可以在指令中指定。
- 接下來的兩個日期、時間組合是儲存在對應文件中的日誌的時間。如果你想找出某個特定日期、時間的日誌或錯誤,這就非常方便了。
例如:
journalctl -b -45
Or
journalctl -b 8bab42c7e82440f886a3f041a7c95b98
也可以使用 -x 選項,在顯示器上加入systemd 錯誤訊息的解釋。在某些情況下,這是個救命稻草。例:
journalctl -xb -p 3
看某一特定時間、日期的日誌記錄
使用 --since 選項與 yesterday、today、tomorrow 或 now 組合。
以下是一些不同指令的範例。你可以根據你的需求修改它們。它們是不言自明的。以下命令中的日期、時間格式為 "YYYY-MM-DD HH:MM:SS"
journalctl --since "2020-12-04 06:00:00"
journalctl --since "2020-12-03" --until "2020-12-05 03:00:00"
journalctl --since yesterday
journalctl --since 09:00 --until "1 hour ago"
看內核特定的記錄
journalctl -k
過濾出某個systemd 服務單元的特定日誌
例如,如果要查看 NetworkManager 服務的日誌
journalctl -u NetworkManager.service
如果不知道service name,看systemd#列出系統中的 systemd service
查看使用者、群組的日誌
id -u debugpoint # 先找出使用者的uid
journalctl _UID=1000 --since today
查看可執行檔的日誌
journalctl /usr/bin/gnome-shell --since today
看log佔用的磁碟空間
journalctl --disk-usage
清除日誌
手動清除
sudo journalctl --flush --rotate # 將所有日誌歸檔
sudo journalctl --vacuum-time=7d # 只保留最近7天的日誌
sudo journalctl --vacuum-time=1s # 只保留最近1秒的日誌
或者設定日誌的大小
sudo journalctl --vacuum-size=400M # 保留最後400M
自動清除
修改/etc/systemd/journald.conf,裡面有下面幾個設定項:
SystemMaxUse: 指定日志在持久性存储中可使用的最大磁盘空间。例:SystemMaxUse=500MSystemKeepFree: 指定在将日志条目添加到持久性存储时,日志应留出的空间量。例:SystemKeepFree=100MSystemMaxFileSize: 控制单个日志文件在被轮换之前在持久性存储中可以增长到多大。例:SystemMaxFileSize=100MRuntimeMaxUse: 指定在易失性存储中可以使用的最大磁盘空间(在 /run 文件系统内)。例:RuntimeMaxUse=100MRuntimeKeepFree: 指定将数据写入易失性存储(在 /run 文件系统内)时为其他用途预留的空间数量。例:RuntimeMaxUse=100MRuntimeMaxFileSize: 指定单个日志文件在被轮换之前在易失性存储(在 /run 文件系统内)所能占用的空间量。例:RuntimeMaxFileSize=200M
修改後記得重啟 journalctl:
!journalctl#重啟日誌
確認日誌的完整性
journalctl --verify
重啟日誌
若是有改變設定,記得重啟以讓變更生效:
sudo systemctl restart systemd-journald