/etc/newsyslog.conf
# logfilename [owner:group] mode count size when flags [/pid_file] [sig_num] /var/log/all.log 600 7 * @T00 J /var/log/amd.log 644 7 100 * J /var/log/auth.log 600 7 100 * JC /var/log/console.log 600 5 100 * J /var/log/cron 600 3 100 * JC /var/log/daily.log 640 7 * @T00 JN /var/log/debug.log 600 7 100 * JC /var/log/kerberos.log 600 7 100 * J /var/log/lpd-errs 644 7 100 * JC /var/log/maillog 640 7 * @T00 JC /var/log/messages 644 5 100 * JC /var/log/monthly.log 640 12 * $M1D0 JN /var/log/pflog 600 3 100 * JB /var/run/pflogd.pid
たとえば下記の場合
/var/log/messages? 644? 5? 100? *? JC
例えば、この場合はファイルのパーミッションは644、
ログが100KBを越えるとバックアップ(lotate)が始まる。
保存するログは5つまで、バックアップbz圧縮が行われる。
各項目の詳細
■ mode
ファイルのパーミッション
■ count
保存するバックアップファイルの数
この数を超過した場合は古い順に消去される
■ size
ログがこのサイズを超過した場合にバックアップを取る。
単位は、Kbyte。
ここが*の場合は、sizeを考慮しない。(when側の指定が有効)
■ when
バックアップを取るタイミングが時間指定の場合はここに記入。
ここが*場合は、size側の設定が有効。
・ @ は制限付きISO8601時刻フォーマット(例:2003年10月23日)を利用すると言う意味。
ここで T00 は 0時 を表している。
@T00 では、毎日0時にバックアップ
01T00 では、毎月1日の0時にバックアップ
・ $ は毎月・毎週・毎日バックップしたい場合の指定。
フォーマットは、Dhh、Ww、WwDhh、Mdd、 MddDhhのどれかを使用。
D:毎日
W:毎週
M:毎月
hh:時間(0~23)
w:曜日(0:日曜日~6:土曜日)
dd:日(1~31)
L:月の最後の日
参考に
$M1D0 では、毎月1日0時
$W6D0 では、毎週土曜日0時
■ [ZJB]
圧縮をするかしないかを表示
Z:gz圧縮してバックアップ
J:bz圧縮してバックアップ
B:圧縮せずにそのままバックアップ
————
最後に、newsyslog.conf編集後の反映
newsyslog.confを編集後は必ず、newsyslogコマンドを発行。
# newsyslog