Linuxコマンド辞典 dmesgコマンド(カーネル)

カーネルのログ(リングバッファ)バッファを表示する「dmesg」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

参考サイト:Man page of INSTALL

概要・使用方法

書式

$ dmesg [オプション]

カーネルのログバッファを表示します。ブートメッセージや、起動後に認識したUSBデバイス情報などを閲覧するために使います。ログバッファは大きさが一定に決まっており、デフォルトのバッファサイズは16,392バイトです。また、バッファがいっぱいになると古いものから削除されていきます。

オプション

-C
–clear
リングバッファを消去する
-c,
–read-clear
リングバッファを表示した後で消去する
-l レベル
–level
コンソールに出力するログのメッセージレベルを”,”区切りで指定する。レベルはemerg/alert/crit/err/warn/notice/info/debugから選択可能
-F ファイル名
–file ファイル名
カーネルログバッファの代わりに指定したファイルを読み込む
-e
–realtime
実行したローカル時間、その後の経過時間を表示する
-k
–kernel
カーネルメッセージのみを表示する
-s バッファサイズ
–buffer-size バッファサイズ
バッファサイズを指定する(デフォルトは16,392バイト)
-w
–follow
追記型表示する。新しいメッセージが来たら表示する。(ctrl + cで終了)
-x
–decode
ログファシリティとレベルも表示する

ログバッファを表示する

$ dmesg

実行結果

[root@centos ~]# dmesg | head -n 10
[45035.795794] device eth0 left promiscuous mode
[45062.538090] device eth0 entered promiscuous mode
[45062.538337] device eth0 left promiscuous mode
[45072.569368] device eth0 entered promiscuous mode
[45072.569635] device eth0 left promiscuous mode
[45081.169745] device eth0 entered promiscuous mode
[45083.546351] device eth0 left promiscuous mode
[45251.359215] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[45251.359217] Bluetooth: BNEP filters: protocol multicast
[45251.359219] Bluetooth: BNEP socket layer initialized
[root@centos ~]# 

grepを使用することで、特定のキーワードのログを表示することもできます。以下ではUSB関連のログを表示しています。

[root@centos ~]# dmesg | grep usb

ログ情報や記録したログとリアルタイム時間を表示する

$ dmesg -x -e

実行結果

[]内は実行した時間。その後の行は実行後の経過秒数を示す

[root@centos ~]# dmesg -x -e | head -n 10
kern  :info  : [ 1月11 00:07] device eth0 left promiscuous mode
kern  :info  : [ 1月11 00:08] device eth0 entered promiscuous mode
kern  :info  : [  +0.000247] device eth0 left promiscuous mode
kern  :info  : [ +10.031031] device eth0 entered promiscuous mode
kern  :info  : [  +0.000267] device eth0 left promiscuous mode
kern  :info  : [  +8.600110] device eth0 entered promiscuous mode
kern  :info  : [  +2.376606] device eth0 left promiscuous mode
kern  :info  : [ 1月11 00:11] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
kern  :info  : [  +0.000002] Bluetooth: BNEP filters: protocol multicast
kern  :info  : [  +0.000002] Bluetooth: BNEP socket layer initialized
[root@centos ~]# 

ログバッファを追記型で見る

$ dmesg -w -l debug

実行結果

USBメモリなどを指すと追記されるのがわかるため便利。

[root@centos ~]# dmesg -w -l debug