再起動や電源投入回数の多いと /var/log/messages が冗長になり見辛くなるので、コンパクトに分割する方法を考えます。
messeges の行の大半が kern(カーネル)が吐き出す起動時のメッセージなので、kern のメッセージを messeges には出さず、別ログとして kern.log に出力し、更新(ローテイト)間隔も短く設定します。
- /etc/logrotate.d/syslog の末尾に下記の行追加
# 追加、意味はわからんが、コピペで追加した。
/var/log/kern.log {
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
endscript
}
- /etc/logrotate.conf の末尾に下記の行追加入
# 新規 kern 記録用ログファイル・ 周期(毎日更新)、保存期間(1週間分)
/var/log/kern.log {
daily
create
rotate 7
}
- /etc/syslog.conf の各ログファイル分離条件
# 変更 ;kern.none;local7.none 追加
*.info;kern.none;local7.none;mail.none;authpriv.none;cron.none /var/log/messages
# 新規 kern 記録用ログファイル
kern.info /var/log/kern.log
- /etc/rc.d/rc.local の末尾にダメ押しで下記を追加
KERN=kern.log
cd /var/log/
test -f $KERN.6 && mv $KERN.6 $KERN.7
test -f $KERN.5 && mv $KERN.5 $KERN.6
test -f $KERN.4 && mv $KERN.4 $KERN.5
test -f $KERN.3 && mv $KERN.3 $KERN.4
test -f $KERN.2 && mv $KERN.2 $KERN.3
test -f $KERN.1 && mv $KERN.1 $KERN.2
test -f $KERN && mv $KERN $KERN.1
cp /dev/null > $KERN
kill -HUP `/sbin/pidof syslogd`
これはPCの起動毎に、kren.log を強制的にローテートさせるものです。ここまでは必要ない方も多いと思います。
時間や間隔はドキュメントを読んで適当に変更して下さいまし。html では見辛いのでプレーンテキストもリンクしておきます。
更新記録
- ...
- ...
- 2004/6/10 作成