sysklogdの設定方法
Debianでlogrotateを使ってログを保存したいのにsyslogが勝手にrotateしてしまうという現象に遭遇した。
ソースを読んだりしてようやく解決
syslogは/etc/cron.dailyと/etc/cron.weeklyのsysklogdというスクリプトでログを回している。
sysklogdは/usr/sbin/syslogd-listfilesを読んでリストアップされたファイルをrotate。
syslogd-listfilesは/etc/syslog.confを読んで含まれているログファイルをリストアップ。
sysklogdで回転させないようにするにはsysklogd内のsyslogd-listfilesに-sで除外を指定するとOK。
例えばmail.infoを除外させたい場合には
for LOG in `syslogd-listfiles -s "mail.info"`
で除外可能。
複数指定したい場合には
for LOG in `syslogd-listfiles -s "mail.info|uucp.log"`
と|で区切れば良い。
Posted at 2008年09月14日 11:42