1、簡介
dmesg 命令主要用來顯示內核資訊。使用 dmesg 可以有效診斷機器硬體故障或者添加硬體出現的問題。另外,使用 dmesg 可以確定您的服務器安裝了哪些硬體。每次系統重啟,系統都會檢查所有硬體并將資訊記錄下來。執行/bin/dmesg 命令可以查看該記錄,開機資訊亦保存在/var/log目錄中,名稱為dmesg的檔案里。
2、dmesg命令常用格式
[root@RedHat_test ~]# dmesg [-cn][-s <緩沖區大小>]
-c: 當完成列印顯示后清除環緩沖內的內容。
-s: 緩沖區大小。定義一個大小為"緩沖區大小"的緩沖區用于查詢內核環緩沖區。默認大小為8196(此大小與2.0.33 和2.1.103 內核的默認syslog 緩沖區大小一致),如果你設定了一個大于默認值的環緩沖區,那你就可以用這個選項定義一個相當的緩沖區來查看完整的環緩沖區內容。
-n: 級別。設定級別為記錄控制臺啟動資訊的級別。比如,-n 1指的就是將此級別設為最低級,除了內核恐慌資訊之外不會向控制臺顯示資訊。所有級別的啟動資訊還將記錄到/proc/kmsg,檔案中,因此,syslogd(8)同樣可以用來對資訊的輸出進行控制。當使用-n選項時,dmesg將不會 清除內核環緩沖區中的內容。當同時使用以上兩個選項時,只有最后一個選項才會產生效果。
3、將系統啟動資訊保存到檔案中
[root@RedHat_test ~]# dmesg > messages.txt
4、單頁輸出
[root@RedHat_test ~]# dmesg | more
[root@RedHat_test ~]# dmesg | less
5、以可讀性較好的形式輸出資訊
[root@RedHat_test ~]# dmesg -H
6、設定記錄資訊的層級
[root@RedHat_test ~]# dmesg -n 3
7、列印輸出記憶體
[root@RedHat_test ~]# dmesg | tail -f #列印輸出最近一次的資訊
[root@RedHat_test ~]# dmesg | head -20 #列印輸出前20行的資訊
[root@RedHat_test ~]# dmesg | tail -20 #列印輸出最后20行日志
8、實時監控dmesg日志的輸出資訊
[root@RedHat_test ~]# watch "dmesg | tail -20"
9、搜索包含特定字串的被檢測到的硬體
[root@RedHat_test ~]# dmesg | grep DMA #查看硬碟的運行模式
[root@RedHat_test ~]# dmesg | grep eth #查看以太網的連接資訊
[root@RedHat_test ~]# dmesg | grep sda #查看硬碟設備
[root@RedHat_test ~]# dmesg | grep ttyS* #查看串口的相關資訊
[root@RedHat_test ~]# dmesg | grep -i memory #查看記憶體狀況
[root@RedHat_test ~]# dmesg | grep -i usb #查看usb介面
[root@RedHat_test ~]# dmesg |egrep -i "(apm|acpi)" #探測系統內核模塊,檢測ACPI的加載情況
10、將開機資訊發郵件
[root@RedHat_test ~]# dmesg >boot.messages
[root@RedHat_test ~]# mail -s "Boot Log of Linux Server" [email protected]
11、列印并清除內核環形緩沖區
[root@RedHat_test ~]# dmesg -c
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/9747.html
標籤:系統維護與使用區
下一篇:Linux系統被攻擊全程序分析
