Logrotate говорит, что "журнал должен вращаться", а затем ничего не делает
У меня есть следующая конфигурация logrotate и 2 ГБ /var/log/messages
:
/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron /var/log/network {
hourly
rotate 5
size 1M
compress
postrotate
service syslog-ng reload
endscript
}
Я запускаю вручную logrotate -d -v /etc/logrotate.conf
, вывод говорит:
rotating pattern: /var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron /var/log/network 1048576 bytes (5 rotations)
empty log files are rotated, old logs are removed
considering log /var/log/messages
log needs rotating
И тогда ничего не делается на /var/log/messages
, файл по-прежнему большой 2 ГБ.
Так была ли ошибка в конфигурации?
1 ответ
Несколько советов в порядке важности:
-) файл конфигурации logrotate кажется нормальным, но кто-то звонит logrotate? Обычно это делается cron или anacron. Проверьте это, поскольку logrotate нужно, чтобы кто-то действительно вызывал его (обычно это cron/anacron), иначе его настройка бесполезна. Проверьте настройки cron / anacron и убедитесь, что демон активен.
-) ежечасно не выглядит допустимым вариантом конфигурации, по крайней мере, в моей версии, проверьте это, чтобы быть уверенным
-) когда вы запускаете его вручную с помощью "-d", в файлы не вносятся никакие изменения, поэтому для этого запуска правильно, что ничего не произошло. Поэтому, чтобы убедиться, что хотя бы конфигурация на 100% подойдет, попробуйте это без -d. И, в конце концов, с -f, чтобы заставить вращение, чтобы вы могли проверить наличие возможных разрешений или подобных проблем.