dmesg コマンドは、Linux カーネルが出力する カーネルリングバッファのメッセージ を表示するコマンドです。
主にシステム起動時のログ、デバイス認識状況、ドライバのエラーメッセージなどを確認するのに利用されます。
構文(Syntax)
dmesg [オプション]
主なオプション一覧
| オプション | 説明 | 使用例 |
|---|---|---|
| (なし) | カーネルメッセージを全て表示 | dmesg |
-C | バッファをクリア | sudo dmesg -C |
-T | ログの時刻を人間が読みやすい形式で表示 | dmesg -T |
-k | カーネル関連メッセージのみ表示 | dmesg -k |
-l LEVELS | 指定レベルのメッセージのみ表示(info, warn, err など) | dmesg -l err |
-n LEVEL | 指定したログレベル以上のメッセージを出力するよう設定 | sudo dmesg -n 3 |
-w | 新しいメッセージをリアルタイムに監視 | dmesg -w |
--color=always | ログをカラー表示(環境による) | dmesg --color=always |
実行例
全てのカーネルメッセージを表示
dmesg
人間が読みやすいタイムスタンプ付きで表示
dmesg -T
出力例:
[Wed Aug 21 12:34:56 2024] usb 1-1: new high-speed USB device number 2 using xhci_hcd
エラーメッセージのみ表示
dmesg -l err
出力例:
[12345.678901] EXT4-fs error (device sda1): ext4_find_entry: ...
USB を接続した直後のメッセージを監視
dmesg -w
出力例(USBメモリ接続時):
[23456.789012] usb 1-1: new high-speed USB device number 3 using xhci_hcd
[23456.900123] usb-storage 1-1:1.0: USB Mass Storage device detected
バッファをクリア
sudo dmesg -C
エラー例(一般ユーザーで制限ありの環境)
dmesg
出力例:
dmesg: read kernel buffer failed: Operation not permitted
関連コマンド
journalctl -k: systemd 環境でカーネルログを確認tail -f /var/log/kern.log: カーネルログファイルを監視lsmod: カーネルモジュール一覧を表示lsusb/lspci: デバイス情報を確認
備考
dmesgは一時的な カーネルリングバッファ を表示するため、再起動するとログは消えます。- 永続的なログは通常
/var/log/kern.logやjournalctlで管理されます。 - 新しいディスクやUSB機器を接続した直後の認識状況確認に特に有効です。
- 権限により一部ログがマスクされる場合があり、管理作業では
sudoが必要になることがあります。
参考
- manページ: man7.org dmesg(1)
- kernel.org ドキュメント: https://www.kernel.org/doc/

コメント