彰化一整天的論壇

 找回密碼
 立即註冊
查看: 965|回復: 3

dmesg 系統管理應用

[複製鏈接]
發表於 2012-10-22 08:43:09 | 顯示全部樓層 |閱讀模式
當系統開機的過程中 , kerenel 會被先載入到記憶體 ,並控制著整個系統 . 系統一開起來 , 它會在螢幕顯示一連串的訊息 ,
內容是關於開機過程中kernel 所偵測到的硬體資訊 . 而這些訊息會擺在 kernel ring bufer 裡面 , 所謂的 ring buffer 就是當新的資訊進來 , 就會把就資訊覆蓋掉 , 所以稱  ring buffer . 如果你想要在開機之後讀取這些訊息 , 你可以使用 dmesg 指令 . 例如:


翻頁顯示所有資訊
# dmesg | more
Bluetooth: L2CAP ver 2.8
eth0: no IPv6 routers present
bnx2: eth0 NIC Copper Link is Down
usb 1-5.2: USB disconnect, address 5
bnx2: eth0 NIC Copper Link is Up, 100 Mbps full duplex
....................................
..............................

查詢可用系統記憶體# dmesg | grep Memory
Memory: 57703772k/60817408k available (2011k kernel code, 1004928k reserved, 915k data, 208k init)
檢視網卡狀態資訊 (UP/DOWN)# dmesg  | grep eth
eth0: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem 96000000, IRQ 169, node addr e4:1f:13:62:ff:58
eth1: Broadcom NetXtreme II BCM5709 1000Base-T (C0) PCI Express found at mem 98000000, IRQ 114, node addr e4:1f:13:62:ff:5a
eth0: Link up

Linux 可允許你改變內定的 ring buffer 儲存檔案的大小限制 , 只要改變 CONFIG_LOG_BUF_SHIFT 這個參數的值 .  一般 dmesg buffer 會儲存在類似這樣的檔/boot/config-2.6.18-194.el5
, 視你的系統版本而定 .因此你可以用下面一行指令 ,尋找與改變該參數的值 .
#  grep CONFIG_LOG_BUF_SHIFT  /boot/config-`uname -r`
CONFIG_LOG_BUF_SHIFT=18
清除 dmesg Buffer如果你想要在下次開機前 , 先清除 dmesg buffer , 你可以執行下面指令:
# dmesg -c

# dmesg
dmesg 時間標籤 (timestamp)原則上  dmesg 是不會伴隨顯示時間標籤的 , 然而 linux 有提供以看見開機的每一行訊息的時間標籤的方法 ,
將 klogd service 啟用並設定紀錄訊息於  /var/log/kern.log  檔案裡 . dmesg 的訊息就會帶上時間標籤了.

# dmesg | grep "L2 cache"
[    0.014681] CPU: L2 cache: 2048K

# grep "L2 cache" kern.log.1

source: http://jmmhlee.pixnet.net/blog/post/21535831-dmesg-%E7%B3%BB%E7%B5%B1%E7%AE%A1%E7%90%86%E6%87%89%E7%94%A8
回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

 ㄚ母滴雞湯
 員林香純滴雞精

Archiver|手機版|小黑屋|彰化一整天的論壇(Excel,Office)  

GMT+8, 2020-2-25 11:00 , Processed in 0.125764 second(s), 18 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回復 返回頂部 返回列表