dmesg
dmesgは、Unix系オペレーティングシステム (OS) のコマンド。カーネルのメッセージバッファの内容を表示する。"display message" の略。
コンピュータの電源を入れると、ブートが行われ、カーネルがメモリにロードされる。そしてカーネル内の個々のデバイスドライバが対応するデバイスが存在するかどうかを調べる。ハードウェアが存在する場合、具体的に何があったかを文字列化した診断メッセージを生成する。カーネル内の他のコンポーネントも、特定のコンポーネントがあるかどうか、どういうパラメータが対応するかといった情報をメッセージとして生成する。この処理は、個々のメッセージを読もうとしてもすぐにスクロールされるような速度で行われる。dmesgコマンドは、システムが完全に起動してから、そのようなメッセージを表示して調べるのに使う。
システムが完全に起動した後も、カーネルは診断メッセージを生成することがある。例えば、I/Oデバイスでエラーが発生した場合、USBデバイスがホットスワップされた場合などである。dmesgを使えば、それらのメッセージも後から確認できる。メッセージは生成されたときにコンソールにも表示される。コンソールを使って作業していると、ユーザープログラムの表示と混じったり、上書きされてすぐ読めなくなったりする。
dmesgの出力は標準的な端末サイズの数画面ぶんになる。このため、一般に dmesg は more、tail、grepなどと組み合わせて使う。出力は syslog などのロギングデーモンがログファイルに格納して保存することが多い。
多くの商用OSは、ブート時にスプラッシュスクリーンを表示していることが多く、ユーザーがその時点でこれらのメッセージを見ないこともある。ただし、スプラッシュスクリーンを表示させず、メッセージを表示させるオプションが存在することが多い。これは、システムのブートが失敗する場合には貴重な診断情報になる。dmesgがないOSでも、同等の機能を持つ(起動時の診断メッセージを表示する)コマンドや他の手段が存在することが多い。
関連項目 [編集]
外部リンク [編集]
- dmesg(8) – JM Project
- The dmesg Command - by The Linux Information Project (LINFO)