MRTGを動かしていると5分に1回syslogにcronのログが出力され
syslogを見ても非常に見難くなります。
cronの-Lオプションでwarn以上しか出力しないように設定してみましたが
上手く動かずsyslogに出力されてしまいます。
そこでcronのログをsyslogではなく独立して出力するように変更します。
T4のlennyではrsyslogが使用されているので/etc/rsyslog.confを修正します。
以下の行があるので変更します。
#
# First some standard log files. Log by facility.
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log
#
# First some standard log files. Log by facility.
#
auth,authpriv.* /var/log/auth.log
cron.* /var/log/cron.log ←追加
*.*;auth,authpriv.none;cron.none -/var/log/syslog ←cron.noneの追加
#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log
変更後にrsyslogをリスタートするか、システムをリブートすれば適応されます。
続いてntpのログもsyslogから切り離します。
ntpのログ設定はntpdオプション用のファイルを修正します。
# vi default/ntp
NTPD_OPTSに以下の用に追加してください。
-l /var/log/ntp.log
ntpデーモンを再起動すれば/var/log/ntp.logが出来ているはずです。
未確認ですが、恐らくこのままではログは肥大化を続けるので
logrotateを使って、ログをローテーションさせてあげます。
新規にlogrotate用のファイルを作成して登録します。
# vi /etc/logrotate.d/ntp
内容はご自分でローテーションさせたい値に書き換えてください。
/var/log/ntp.log {
weekly
rotate 12
compress
missingok
}
これで/var/log/ntp.log がローテーションされます。
dhcp3-serverのログも結構頻繁に出るので独立させます。
基本的にはcronと同じ方法ですが、/etc/dhcp3/dhcpd.confの以下の行をまず確認します。
# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;
log-facility local7;が該当箇所です。
これはsyslogでlocal7というfacilityを使うという意味です。
もし他のデーモンがlocal7を使っていると、そのログまで一緒に別のファイルに書き込まれることになるので、local7の数字の部分を書き換える必要があります。
他で使われていなければそのままで構いません。
/etc/rsyslog.confを開いてcronと同様に追加、修正します。
追加、修正する文字はlocal7(書き換えていたら書き換えたもの)となります。
両サービスを再起動すれば、ログは別れて出力されます。
またlogrotateもcronと同じように設定する必要があります。
これらのログファイルを分けることでsyslogは大変見やすくなりました。
(ntpやdhcp-serverなどは、システムのログに比べて重要性は下がりますが、チェックはした方が良いと思います)
追記
smartmontoolsも同じようにsyslogのfacilityを指定可能です。
smartdのオプションを見ると以下のように書いています。
smartd version 5.38 [powerpc-unknown-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/
Usage: smartd [options]
-c NAME|-, –configfile=NAME|-
Read configuration file NAME or stdin [default is /etc/smartd.conf]
-d, –debug
Start smartd in debug mode
-D, –showdirectives
Print the configuration file Directives and exit
-h, –help, –usage
Display this help and exit
-i N, –interval=N
Set interval between disk checks to N seconds, where N >= 10
-l local[0-7], –logfacility=local[0-7]
Use syslog facility local0 – local7 or daemon [default]
-n, –no-fork
Do not fork into background
-p NAME, –pidfile=NAME
Write PID file NAME
-q WHEN, –quit=WHEN
Quit on one of: nodev, errors, nodevstartup, never, onecheck, showtests
-r, –report=TYPE
Report transactions for one of: ioctl[,N], ataioctl[,N], scsiioctl[,N]
-V, –version, –license, –copyright
Print License, Copyright, and version information
/etc/default/smartmontoolsのsmartd_optsに–logfacility=local6などと追加すればOKです。
後はsyslogの設定でlocal6(オプションで指定したlocal)のログを切り離せば別にログを吐き出せます。