UNIXやLinuxのシステム管理(システム・コマンド・設定)に関する世界観8A(システムロガー)です。
ログファイルとは、システムの動作を逐一記録したファイルのこと。
システムがダウンした時や、なんらかの理由で動かなくなった時などに、ログファイルに記録されている内容から、原因究明や復旧への最初の糸口が見出せる。
Linuxのログファイルは/var/logディレクトリにある。このディレクトリの下にシステムにとって重要なさまざまなログファイルがある。
2023.09.20
システムのログを取ってくれる。システムにどんな不良があったのか、いつ何をしていたのか(いつ何が起きたのか)を知るために役に立つ。
デフォルトでは、/var/logディレクトリにさまざまなログファイルがある。システム全般のログは/var/log/syslogにある。
後日注記:Linuxで何かあった時、たとえばアプリケーションが起動しなかったり不正終了した時は、原因を探るために/var/log/syslogを見てみましょう。エラーメッセージをGoogleにかけることでも解決することがあります。
/var/logにはさまざまなログがあります。
よく必要になるログファイルとして、/var/log/boot.logはOS起動時のログが記録される。一般的なシステム関連は/var/log/messages、cronは/var/log/cronに記録される。
ログ名の最後の.0や.1は古いアーカイブされた過去のログを表します。たとえば、messages.0のようになります。
以下の書籍が参考になります。
Linuxファイルシステム階層も参照のこと。
/var/log/auth.logには認証に関するログが記録されている。
一人で一台のLinuxを使っている時は関係ないが、ネットワークに繋がっている場合などにチェックすることで、GDMやsu/sudoコマンドにログインしたユーザのことをチェックできる。
認証だけではなく、システム全般のログを参照するためには、/var/log/syslogを参照すること。
そのほか、認証関係のログについては以下の記事が参考になる。
sysklogdは従来的なシステムロガー用のデーモンを含めたパッケージ。syslog-ng, metalogはさらに高度で上級者向けのパッケージ。
/var/log/dmesgは、ブートしてからファイルシステムがマウントするまでの「ブートログ」が保管されるログファイルで、dmesgコマンドによって作成される。
ブート時に何が起こったのか、システムが立ち上がってからもう一度見たい時に使うことができる。
/var/log/messageは、syslogdが出力するログ。syslogdが起動してからはこちらにログが保管される。
もし、デーモンの起動で何かあったら、まずログを見ましょう。たとえば/var/log/boot.logに、OSを起動する時に表示されるログがあります。
ログを見て、何のデーモンなのか確認出来たら、
systemctl status [サービス名]
を確認します。ここで表示される情報から、たとえば正常に起動できなかったサービスについて、何が問題なのかを突き止められます。
initとデーモンも参照のこと。
2024.10.06編集
journalctlは、systemdによる新しいシステムロガーの表示コマンド。
長らくシステムロガーの吐くログファイルは
less /var/log/syslog
で読むことができたが、systemd導入の結果、今ではjounalctlを使うようになった。
systemdを参照のこと。
2024.10.06編集