Я работаю над программой, которая создает большой файл журнала.
Я хочу обработать его с помощью logrotate.
Это конфигурация, которую я поставил в /etc/logrotate.d/:
/var/log/myproject.log {
hourly
maxsize 1
rotate 6
missingok
notifempty
compress
nocreate
copytruncate
su www-data www-data
}
(/var/log/myproject.log имеет владельца www-data)
Команды
sudo logrotate -vf /etc/logrotate.conf
и
sudo logrotate -vf /etc/logrotate.d/myproject
вращаются лог правильно.
Однако после их вызова /etc/cron.hourly пуст. Это означает, что logrotate не вызывается по часам.
Я уверен, что скрипт logrotate в /etc/cron.daily? Проверяет ли скрипт частоту обновления файлов журнала. То есть если у меня есть logrotate скрипт в /etc/cron.daily, а для некоторого файла журнала X в /etc/logrotate.d/ я устанавливаю настройку weekly, будет ли X поворачиваться ежедневно или еженедельно? Могу ли я просто скопировать-вставить /etc/cron.daily/logrotate в /etc/cron.hourly/? Могу ли я вырезать-вставить? Должен ли я добавить файл 0anacron в /etc/cron.hourly/? Должен ли я сделать что-то еще, чтобы включить часовую регистрацию?