跳轉到

建立 2026-09-14 更新 2026-09-14

日誌

服務失敗、登入被拒、磁碟 I/O 錯誤,線索幾乎都在 log。現代發行版以 systemd journal 為主,傳統文字檔仍在 /var/log

journalctl

journalctl -xe
journalctl -u nginx -e
journalctl -u ssh --since "1 hour ago"
journalctl -f
選項 作用
-u 某個服務
-e 跳到結尾
-f 持續追蹤,像 tail -f
-xe 最近錯誤並加說明
--since 時間範圍

預設可能用 less 開啟,Q 離開。權限不足時加 sudo,否則只能看到自己這次登入的訊息。

journalctl -p err -b

-p err 只看 error 以上,-b 限定這次開機。

/var/log 裡的文字檔

發行版不同,檔名略有差異。Ubuntu 常見:

路徑 內容
/var/log/syslogjournal 系統綜合訊息
/var/log/auth.log 登入、sudo、SSH
/var/log/nginx/ 網站存取與錯誤
sudo less /var/log/auth.log
sudo grep 'Failed password' /var/log/auth.log

標準除錯順序

  1. systemctl status 服務名 看有沒有 failed 與最後幾行
  2. journalctl -u 服務名 -e 看完整脈絡
  3. 仍不夠再進該軟體自己的 log 目錄

空間被 log 吃光時,先 du -h --max-depth=1 /var/log,再決定清舊檔或調 logrotate,而不是整目錄 rm

總結

journalctl -u 服務 -e,再翻 /var/log。會看 log,才算會管 Linux。