почему-то старые файлы журналов не удаляются. Пример с apache
Что говорит файл conf:
$ cat /etc/logrotate.d/apache2
/var/log/apache2/*.log {
weekly
missingok
rotate 2
compress
delaycompress
notifempty
create 640 root adm
sharedscripts
postrotate
/etc/init.d/apache2 reload > /dev/null
endscript
}
(Обрезанное) содержимое папки журнала:
# ls /var/log/apache2/
access.log error.log.26.gz other_vhosts_access.log.20.gz access-ssl.log.14.gz
access.log.1 error.log.27.gz other_vhosts_access.log.21.gz access-ssl.log.15.gz
access.log.2.gz error.log.28.gz other_vhosts_access.log.22.gz access-ssl.log.16.gz
access.log.3.gz error.log.2.gz other_vhosts_access.log.23.gz access-ssl.log.17.gz
[...]
На самом деле их очень много:
# ls /var/log/apache2/ | wc -l
85
Команда logrotate с --verbose дает мне следующее:
# /usr/sbin/logrotate --verbose /etc/logrotate.conf
[...]
reading config file apache2
reading config info for /var/log/apache2/*.log
[...]
rotating pattern: /var/log/apache2/*.log weekly (2 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/apache2/access.log
log does not need rotating
considering log /var/log/apache2/error.log
log does not need rotating
considering log /var/log/apache2/other_vhosts_access.log
log does not need rotating
considering log /var/log/apache2/pbpdhg-ssl.log
log does not need rotating
not running postrotate script, since no logs were rotated
[...]
Что здесь не так? Журналы вращаются, но не удаляются? Что мне не хватает?
ваша конфигурация говорит: поверните 2
это означает, что файлы журналов перед удалением дважды меняются, поэтому logrotate обрабатывает только 2 файла.
я предполагаю, что конфигурация была изменена в какой-то момент, потому что ранее хранилось больше файлов журнала, возможно, это было что-то вроде поворота 28. Эти старые файлы вам нужно удалить вручную.
Журналы с суффиксом .gz не рассматриваются, так как вы указали: /var/log/apache2/*.log
Таким образом, остаются 2 файла .log и все файлы .gz.
Чтобы изменить это, положите туда
/ var / log / apache2 / ** log * или какое-то регулярное выражение.