[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

/var/log/dmesg

pointこの用語のポイント

pointファイルだよ

pointUNIX系のOSで使われるよ

pointカーネルのログを記録するよ

スポンサーリンク

簡単に書くよ

/var/log/dmesgとは

UNIX系のOS(LinuxとかMacとか)で使われる、カーネル(OSの中核部分として頑張っているソフトウェア)が出力したログが記録されているファイル
です。

image piyo

詳しく書くよ

まずは予備知識から行きましょう。

ログは「コンピュータ世界におけるやったことや起こったことの記録」ね。
コンピュータさんは、必要に応じてログを残しています。

/var/log/dmesg

OSは「パソコンさんの人格に相当するソフト」です。
「これが無いとパソコンじゃねーよ」な基本ソフトです。
パソコンさんは、中にOSを入れることによって、パソコンとして動くことができます。

/var/log/dmesg2

パソコンさんの中にWindowsを入れれば「はーい、ボクWindowsだよー」な人格になりますし、Macを入れれば「ヘーイ、ミーはMacさー」な人格になります。

/var/log/dmesg3

カーネルは「OSの中核部分として頑張っているソフトウェア」です。
OSを一つの組織と見なした場合、カーネルさんは中心人物です。
こいつがいなければ始まりません。

/var/log/dmesg4

ただし、カーネルさんだけでは組織の運営が成り立ちません。
シェルデーモンといった、その他のソフトウェアを手足のように使うことによって、はじめて組織が回ります。

「カーネルさんは大事なやつだけど、カーネルさんだけではOSは成り立たない」と理解してください。
カーネルさんとあれやこれやのソフトウェアが組み合わさって、一つのOSが出来あがっています。

/var/log/dmesg5

カーネルさんは、何か特別なことが起こると「こんなことがあったよ!」という情報を出力します。
出力された情報は、とあるところにメモられています。

/var/log/dmesg6

以上が予備知識です。

ここまでを踏まえて、カーネルの出力したログが記録されているファイルが「/var/log/dmesg」です。

「var」ディレクトリの中の「log」ディレクトリの中の「dmesg」ファイルで「/var/log/dmesg」ね。
UNIX系のOSLinuxとかMacとか)で使われるファイルです。

/var/log/dmesg7

「/var/log/dmesg」は「リングバッファ」と呼ばれる構造になっています。

/var/log/dmesg8

リングバッファの仕組みをきちんと理解しようとすると大変かもしれません。
ここでは単に「詰め込める量が決まっているファイル」と解釈してください。
限界を超えて詰め込もうとすると、古いものから飛び出します。

/var/log/dmesg9

つまり、新しいログが記録される毎に、古いログから消えていくわけです。
その代わり、ファイルの大きさが、一定以上にはなりません。
自分で定期的に消したりしなくて大丈夫なのは楽ちんですね。

「/var/log/dmesg」はテキストファイル(中身が文字だけのファイル)です。

more /var/log/dmesg

等のコマンドを実行しても、中身を確認できます……が、専用の「dmesg」というコマンドがあります。
そのまま

dmesg

を実行すれば「/var/log/dmesg」の中身が表示されます。
私の環境では、以下の内容が表示されました。

[ 0.000000] CPU0 microcode updated early to revision 0xd1, date = 2010-10-01
[ 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-327.3.1.el7.x86_64 (builder@kbuilder.dev.centos.org) (
gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Wed Dec 9 14:09:15 UTC 2015
[ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-327.3.1.el7.x86_64 root=/dev/mappe
r/centos-root ro crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet L
ANG=ja_JP.UTF-8
[ 0.000000] e820: BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009efff] usable

(以下略)



「dmesg」コマンドで「/var/log/dmesg」の中身を表示した場合は、表示の仕方を変えたりもできます。
具体的な使い方については、用語「dmesg」の説明をご覧ください。

image piyo2

一言でまとめるよ

まぁ「/var/log/dmesg」って単語が出てきたら「カーネルのログが記録されているファイルなんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク