首頁 > 套件與系統管理 > journalctl

完全掌握Journalctl

一個查詢和管理systemd日誌的核心工具。通過本指南,您可以了解`journalctl`的各種選項和用法。

主要選項

點擊下面的選項來直接構建`journalctl`命令並查看每個功能的說明。這個工具幫助用戶直觀地理解命令的運作方式,通過組合各種選項。

1. 基本查詢

2. 過濾

3. 輸出格式

生成的命令:

請試著組合命令。

這個 Django 應用程序是一個技術指南文檔,旨在為用戶輕鬆解釋 Linux 的各種命令。

`journalctl` 執行命令。

請將上述選項組合在一起,與 AI 一同虛擬執行命令。

日誌存儲和結構

`journald`服務將系統日誌以二進制格式存儲在特定位置。存儲方式根據系統設置而異,這與日誌保留時間直接相關。本節將解釋日誌存儲的位置和方式。

🌀 揮發性存儲

/run/log/journal/

此處的日誌在系統重啟時會被刪除。主要用於短期故障排除或臨時日誌存儲。如果系統未設置永久存儲目錄,則默認使用此處。

💾 永久存儲

/var/log/journal/

用於希望在系統重啟後保留日誌的路徑。大多數運行伺服器環境都會設置在此路徑存儲日誌。如果此目錄存在,`journald`將自動保留日誌。

配置文件和日誌清理

為了防止日誌佔用過多磁碟空間,您可以更改`journald`的設置或定期清理舊日誌。本節將介紹相關的配置文件和清理命令。

配置文件: journald.conf

`journald`的所有操作都可以在`/etc/systemd/journald.conf`文件中控制。以下是主要的設置選項。更改設置後,必須使用`sudo systemctl restart systemd-journald`命令重新啟動服務。

  • Storage=: 決定日誌的存儲方式。 (`persistent`, `volatile`, `auto`)
  • SystemMaxUse=: 指定日誌可使用的最大磁碟空間。 (例如: `1G`)
  • SystemKeepFree=: 指定必須保持的最小空閒空間。 (例如: `200M`)
  • ForwardToSyslog=: 設置是否將日誌傳遞到現有的syslog守護進程。

日誌清理

您可以手動清理日誌以釋放磁碟空間。刪除的日誌無法恢復,需小心操作。

檢查當前磁碟空間

journalctl --disk-usage

檢查當前日誌佔用的磁碟空間。

刪除舊日誌 (根據時間)

sudo journalctl --vacuum-time=2weeks

刪除指定時間之前的所有日誌。

限制日誌大小 (根據容量)

sudo journalctl --vacuum-size=500M

限制日誌文件的總大小到指定容量,並刪除舊日誌。


相同類別命令