Linux指令dmesg用來顯示開機資訊,kernel會将開機資訊存儲在ring buffer中。您若是開機時來不及檢視資訊,可利用dmesg來檢視。開機資訊亦儲存在/var/log目錄中,名稱為dmesg的檔案裡
===============================================
參數:
-T
檢視結果 包含時間
-c
清空dmesg的日志。該指令會清空dmesg環形緩沖區中的日志。但是你依然可以檢視存儲在‘/var/log/dmesg’檔案中的日志。
-i
忽略大小寫
-s<緩沖區大小>
預設定為8196,剛好等于ring buffer(循環緩沖區)的大小;
使用示例:
1.列出加載到核心中的所有驅動,使用more或less展示
我們可以使用如‘more’。 ‘tail’, ‘less ’或者‘grep’文字處理工具來處理‘dmesg’指令的輸出。由于dmesg日志的輸出不适合在一頁中完全顯示,是以我們使用管道(pipe)将其輸出送到more或者less指令單頁顯示。
dmesg -T | more
使用Ctrl+C 退出
dmesg -T | less
使用ctrl+Z 退出
2.列出所有被檢測到的硬體
dmesg -T | grep sda
3.隻輸入dmesg的前20行
dmesg -T | head -20
4.隻輸入dmesg的後20行
dmesg -T | tail -20
5.搜尋包含特定字元串的被檢測到的硬體
由于‘dmesg’指令的輸出實在太長了,在其中搜尋某個特定的字元串是非常困難的。是以,有必要過濾出一些包含‘usb’ ‘dma’ ‘tty’ ‘memory’等字元串的日志行。grep 指令 的‘-i’選項表示忽略大小寫。
dmesg -T | grep -i usb
dmesg -T | grep -i dma
dmesg -T | grep -i tty
dmesg -T | grep -i memory
6.檢視 OOM
dmesg -T | grep 'Out of memory'
7.實時監控dmesg日志輸出
watch "dmesg -T | tail -20"
Ctrl+C 退出
8.清空dmesg緩沖區日志
dmesg -c