教程短文資訊

掌握journalcl命令:綜合指南

系統日誌是管理員和開發人員在監控系統性能、解決問題和了解系統內部事件方面的重要資源。在本文中,我們了解了在Linux系統上,journalctl命令提供了一種有效的方式來訪問和管理這些日誌。

簡介:journalctl命令

journalctl命令是一種工具,允許用戶查看和交互systemd日誌。這些日誌來自各種來源,例如內核、initrd、系統服務、應用程序和systemd本身。日誌以二進位格式存儲,並可以使用journalctl有效地查詢。

journalctl命令的基本語法如下:

journalctl [options…] [matches…]

使用journalctl查看和過濾日誌

最簡單的使用journalctl的方法是不帶任何選項。這將按時間順序顯示所有日誌記錄:

$ journalctl

然而,輸出可能會令人不知所措,特別是在運行時間較長的系統上。為了使導航更容易,輸出會自動使用less命令進行分頁。使用回車鍵逐行滾動,或使用空格鍵逐頁滾動。要退出日誌輸出,請按鍵盤上的q。

要以反向時間順序查看日誌(即最新的條目先),請使用-r選項:

$ journalctl -r

您可以通過使用-n選項後跟要顯示的行數來限制顯示的日誌條目數量。例如,要查看最後15個條目:

$ journalctl -n 15

要僅查看與內核相關的消息,請使用-k選項:

$ journalctl -k

也可以按優先順序篩選日誌。日誌級別從0(緊急情況)到7(調試)不等,數字越低表示優先順序越高。使用-p選項查看特定級別及以上的日誌。例如,要查看錯誤、關鍵、警報和緊急日誌:

$ journalctl -p 3

要查看特定系統服務的日誌,請使用-u標誌後跟服務名稱。例如,要查看Apache服務的日誌:

$ journalctl -u apache2.service

處理引導日誌

journalctl命令允許用戶查看特定引導會話的日誌。每個引導都單獨記錄,因此很容易隔離與特定引導相關的日誌。要查看以前引導的所有日誌,請使用--list-boots選項:

$ journalctl --list-boots

要查看上一次系統引導的日誌,請使用帶有數字-1-b選項。指定不同的數字以查看舊引導的日誌:

$ journalctl -b -1

高級用法

您可以使用--since--until選項查看特定時間段內的日誌。例如,要查看昨天的日誌:

$ journalctl --since yesterday

這些選項可以一起使用以指定特定的時間範圍。使用YYYY-MM-DD HH:MM:SS日期格式以獲得精度:

$ journalctl --since 2023-04-05 08:00:00 --until 2023-04-05 12:00:00

要以JSON格式獲取日誌輸出,可以使用-o選項和jsonjson-pretty

$ journalctl -o json

$ journalctl -o json-pretty

要實時監視正在生成的日誌,請使用-f選項,該選項類似於tail命令的-f選項:

$ journalctl -f

您還可以使用--disk-usage選項檢查日誌文件佔用的磁碟空間:

$ journalctl --disk-usage

其他提示和選項

journalctl命令提供了幾個附加選項來自定義日誌的顯示和導航:

  • 使用--no-page選項以不分頁(即不使用less)的方式在終端中顯示日誌:
$ journalctl --no-page
  • 要顯示所有日誌欄位,包括不可列印的欄位,請使用--all選項:
$ journalctl --all
  • 默認情況下,journalctl命令以本地時區顯示日誌。但是,可以使用-u選項指定其他時區:
$ journalctl -u apache2.service --utc

這裡是一些有用的journalctl命令選項,但這只是冰山一角。請參閱man journalctl以查看完整的選項列表和語法說明。

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0

You may also like

Leave a reply

您的電子郵箱地址不會被公開。 必填項已用 * 標註

此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

More in:教程

教程

在 Ubuntu Linux 上安裝 Clang

無論您使用的是 Ubuntu 22.04、20.04 或其他任何版本,並且想要安裝 Clang(一個開源的 C、C++ 和 Objective-C 編譯器),本文將對您有所幫助。Clang 是 GNU […]