dmesg コマンド:起動時の出力メッセージ
コマンドの概要
「dmesg(display message)」コマンドは、Linuxカーネルが起動時や実行中に発生するカーネルメッセージを表示するために使用されます。これには、ハードウェアやデバイスの初期化メッセージ、デバッグ情報、エラーメッセージなどが含まれます。
「/var/log/dmesg」ファイル
「/var/log/dmesg」ファイルには、システムの起動時に生成されたカーネルメッセージが保存されます。このファイルは、起動時のメッセージをログとして永続的に保持するために使用されます。
‘/var/log/dmesg’ の出力
$ cat /var/log/dmesg
[ 0.000000] Initializing cgroup subsys cpuset
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Initializing cgroup subsys cpuacct
[ 0.000000] Linux version 3.10.0-1160.108.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Thu Jan 25 16:17:31 UTC 2024
[ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-1160.108.1.el7.x86_64 root=/dev/mapper/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet LANG=ja_JP.UTF-8
[ 0.000000] e820: BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
[ 0.000000] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved
(省略)
コマンドの主なオプションと説明
オプション | 説明 |
---|---|
-c | カーネルバッファをクリアし、表示しない。 |
-H | 人間にとって読みやすい形式で出力します。 |
-l | ログレベルを指定して表示する。※下表の利用可能なログレベル (優先度)を参照 |
-n | ログレベルを level に設定する。 |
-s | バッファのサイズを指定して表示する。 |
-T | メッセージのタイムスタンプを人間が読みやすい形式で表示する。 |
利用可能なログレベル (優先度)
ログレベル | 説明 |
---|---|
emerg | システムが利用できない状態です。 |
alert | すぐに処理しなければならないものです。 |
crit | 致命的な状態です。 |
err | エラー状態です。 |
warn | 警告状態です。 |
notice | 特に問題のない状態ですが、特定の状況を表すものです。 |
info | 参考情報です。 |
debug | デバッグレベルのメッセージです。 |
コマンドの使用例と解説
1.すべてのカーネルメッセージを表示する
カーネルが起動してから現在までのすべてのメッセージが表示されます。
$ dmesg
2.カーネルメッセージを最後の10行だけ表示する
最後の10行のカーネルメッセージが表示されます。
$ dmesg | tail
3.特定のログレベルのメッセージのみ表示する
エラーレベルのカーネルメッセージのみが表示されます。
$ dmesg -l err
4.メッセージのタイムスタンプを人間が読みやすい形式で表示する
カーネルメッセージのタイムスタンプが人間が読みやすい形式で表示されます。
$ dmesg -T
「dmesg」コマンドを使用することで、システムの起動や動作に関する詳細な情報を取得し、デバッグやトラブルシューティングに役立てることができます。