関連記事:Linux の基本機能 | |||||
---|---|---|---|---|---|
logrotate の設定
logrotate の設定ファイルは /etc/logrotate.conf (個別設定は /etc/logrotate.d 配下) です。
sudo vim /etc/logrotate.d/test.conf
/tmp/rotate/test.log { daily maxsize 1M create 0660 root root rotate 2 }
項目 | 説明 |
---|---|
daily | ローテーションの間隔 weekly や hourly も設定可能 |
maxsize | このファイルサイズになるとローテーションする |
create | ローテーションで作成するファイルのパーミッション |
rotate | バックアップを残す世代数 |
なお、logrotate は cron により自動で実行されます。
logrotate のテスト
cron の実行を待てない。今すぐテストしたい!ということもよくあるかと思います。
ここでは、logrotate を強制的に実行する方法を説明します。
準備
mkdir /tmp/rotate
touch /tmp/rotate/test.log
sudo chmod 755 /tmp/rotate
オプション -f 手動実行
sudo logrotate -f /etc/logrotate.d/test.conf
ls /tmp/rotate/
test.log test.log.1
現行世代がバックアップ (test.log.1) となり、新規に空のファイル (test.log) が作成されました。
sudo logrotate -f /etc/logrotate.d/test.conf
sudo logrotate -f /etc/logrotate.d/test.conf
ls /tmp/test*
ls /tmp/rotate/
今まで合計三回ローテーションをしましたが、「rotate 2」と設定しているため、3世代目は削除されていることが確認できます。
関連情報
関連記事:Linux の基本機能 | |||||
---|---|---|---|---|---|