UNIX USER 2003年11月号より転載
●Red Hat Linuxのデフォルト設定
Red Hat Linux(以下Red Hat)のデフォルト設定は、リスト5のようになっています。
リスト5 Red Hatのsyslog.conf
|
1: #kern.* /dev/console
2: *.info;mail.none;authpriv.none;cron.none /var/log/messages
3: authpriv.* /var/log/secure
4: mail.* /var/log/maillog
5: cron.* /var/log/cron
6: *.emerg *
7: uucp,news.crit /var/log/spooler
8: local7.* /var/log/boot.log
|
コンソールへの出力がコメントアウトされているので、デフォルトではコンソールへは何も通知しません。このほかに気になるのは8行目で設定されているログで、システム起動/終了処理に関するものです。カーネルではなくシスログで取得するログなので、syslogdが開始してからと終了するまでの間に起動/終了したデーモンを記録しています。ただし、ほとんどの情報は「*.info」指定で/var/log/messagesファイルにも採取されているので、情報としてはあまり意味がありません。システムの起動/終了シーケンスで、デーモンが正常に起動/終了できているかを確認したいときぐらいしか使わないでしょう。
●Red Hatのログフォーマット
/var/log/messagesの内容は、リスト6のようになります。
リスト6 Red Hatのログ出力例
|
Jul 28 17:01:35 redhat sshd(pam_unix)[12458]: session opened for user username by (uid=500)
Jul 28 18:57:35 redhat 7月 28 18:57:35 su(pam_unix)[12625]: authentication failure;
logname=username uid=500 euid=0 tty= ruser=username rhost= user=root
|
●Plamo Linuxのデフォルト設定
Plamo Linux(以下Plamo)のデフォルトの設定は3行しかなく、ほかのOSと比べて非常に単純で、しかもログ取得の方針も独特です(リスト7)。
リスト7 Plamoのsyslog.conf
|
1: *.=info;*.=notice /usr/adm/messages
2: *.=debug /usr/adm/debug
3: *.err /usr/adm/syslog
|
まずセレクタには、Linux固有の指定法である「=」を使っています。こうすることで、複数レベルのメッセージを1ファイルにまとめるのではなく、それぞれ重要度レベルごとにファイルを分けて記録しています。infoとnoticeレベルだとmessagesファイル、debugレベルだとdebugファイル、errレベルだとsyslogファイルです。ほかのOSのように、コンソールやユーザーの端末にメッセージを出力したりということはしていません。
また、ログファイルのディレクトリが/usr/admとなっているのもPlamo独自で、/var以下にファイルを保存するほかのOSと比べるとちょっと変わっています。ただし、Plamoでは/usr/admは/var/admへのリンクで、/var下のadmはさらにlogへのリンクになっていますので、/usr/adm、/var/adm、/var/logディレクトリの内容はすべて同じです。
# ls -l /usr/adm
lrwxrwxrwx 1 root ...... /usr/adm -> /var/adm/
# ls -l /var/adm
lrwxrwxrwx 1 root ...... /var/adm -> log/
|
●Plamoのログフォーマット
/usr/adm/messagesファイルの内容はリスト8のようになっています。
リスト8 Plamoのログ出力例
|
Jul 29 12:04:39 plamo sshd[4616]: Accepted password for username from 10.5.2.10 port 1302 ssh2
Jul 29 12:04:54 plamo su[4625]: - pts/0 username-root ← 失敗時
Jul 29 12:04:59 plamo su[4626]: + pts/0 username-root ← 成功時
|
●Debian GNU/Linuxのデフォルト設定
Debian GNU/Linux(以下Debian)では、Plamoとは逆に非常に細かく設定してあります(リスト9)。
リスト9 Debianのsyslog.conf
|
1: auth,authpriv.* /var/log/auth.log
2: *.*;auth,authpriv.none -/var/log/syslog
3: daemon.* -/var/log/daemon.log
4: kern.* -/var/log/kern.log
5: lpr.* -/var/log/lpr.log
6: mail.* -/var/log/mail.log
7: user.* -/var/log/user.log
8: uucp.* /var/log/uucp.log
9:
10: mail.info -/var/log/mail.info
11: mail.warn -/var/log/mail.warn
12: mail.err /var/log/mail.err
・
・
13: *.=debug;\
14: auth,authpriv.none;\
15: news.none;mail.none -/var/log/debug
・
・
16: *.emerg *
・
|
13〜15行目では、debugレベルのものだけを/var/log/debugファイルに記録するようにしていますが、そのうちauthやauthpriv、news、mailに関するものはnone指定を用いて除いています。これらは別のファイルに保存するからです。このセレクタは1行で書いても構わないのですが、読みやすくするために行末にバックスラッシュを置いて行を分割しています。
このほか、ファイル名称の前にハイフンを付けているものと付けていないものがあります。ハイフンを付けると、何かメッセージを記録するときに、その時点でのバッファをフラッシュしません。すなわち書き込みに遅延が起こります。あまり頻繁にログメッセージを吐き出すプログラムの場合は、ログファイルの書き込みにCPUやI/Oを取られてしまいパフォーマンスが落ちることも考えられます。それに対処するための指定です。
●Debianのログフォーマット
DebianのログメッセージはRed HatとPlamoを合わせたような感じです(リスト10)。このログは認証に関するものなので、/var/log/messagesファイルではなく/var/
log/auth.logファイルに書き込まれています。
リスト10 Debianのログ出力例
|
Jul 29 15:34:52 debian sshd[263]: Accepted password for username from 10.245.245.100 port 1323 ssh2
Jul 29 15:34:52 debian PAM_unix[265]: (ssh) session opened for user username by (uid=500)
Jul 29 15:34:55 debian PAM_unix[267]: authentication failure; username(uid=500) -> root for su ser
vice
Jul 29 15:34:56 debian su[267]: pam_authenticate: Authentication failure
Jul 29 15:34:56 debian su[267]: - pts/0 username-root
Jul 29 15:35:01 debian su[268]: + pts/0 username-root
Jul 29 15:35:01 debian PAM_unix[268]: (su) session opened for user root by username(uid=500)
|
関連リンク
UNIXUSER
定期購読のご案内
バックナンバー販売協力店
読者モニターレポート
|
UNIX USER 11月号
第1特集:WebDAVファイル共有 最新事情
第2特集:まだいるワーム/ウイルスをあぶり出せ
第3特集:カスタムLinuxザウルスを作る
付録CD-ROM 2枚組み
・オリジナルUNIX(V5/V6/V7)のソースコード
・OpenZaurus 3.3.1
・SL-C700用special kernel v11
・GNOPPIX 0.5.5
・最新Linuxカーネル ほか
|
|