無事logrotateを設定できた!のもつかの間、、、
- あれ、でもdailyで設定しているのに日付が変わってもローテートされない・・・
- /etc/logrotate.confや/etc/logrotate.d/配下を見直してるけどちっともわからん・・・ ということで調べてみました。
logrotateのdaily・Weekly・Monthlyの動くタイミングはどこで設定されている??
logrotateの動くタイミングがわからないので、調べてみたところ、どうも/etc/crontabのファイルが管理している様子。
$ sudo vim /etc/crontab
- /etc/crontab
# /etc/crontab: system-wide crontab # Unlike any other crontab you don't have to run the `crontab' # command to install the new version when you edit this file # and files in /etc/cron.d. These files also have username fields, # that none of the other crontabs do. SHELL=/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin # m h dom mon dow user command 17 * * * * root cd / && run-parts --report /etc/cron.hourly 25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily ) 47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ) 52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly ) #
これを見ると、dailyは2番目の6:25に起動しているやつみたいですね。ということでこれを、0:00に設定しておけば、毎日0:00にログローテートされます。解決!