Eu achei o comando createolddir muito útil para o logrotate limpar dinamicamente minhas pastas de log, e fazer isso funcionar com sucesso em outros servidores Debian sem nenhum problema.
Apenas para um servidor, recém-configurado com o Debian 8, todas as atualizações feitas, o logrotate gera esse erro estranho para createolddir:
root@v22017093097653257:~# logrotate -d /etc/logrotate.d/fail2ban
reading config file /etc/logrotate.d/fail2ban
error: /etc/logrotate.d/fail2ban:9 unknown option 'createolddir' -- ignoring line
olddir is now /var/log/x_old_logs/fail2ban_old_logs/
error: /etc/logrotate.d/fail2ban:19 error verifying olddir path /var/log/x_old_logs/fail2ban_old_logs/: Datei oder Verzeichnis nicht gefunden
removing last 1 log configs
O arquivo fail2ban /etc/logrotate.d/fail2ban se parece com isto:
/var/log/fail2ban.log {
weekly
rotate 4
compress
delaycompress
missingok
createolddir
olddir /var/log/x_old_logs/fail2ban_old_logs/
postrotate
fail2ban-client flushlogs 1>/dev/null
endscript
# If fail2ban runs as non-root it still needs to have write access
# to logfiles.
# create 640 fail2ban adm
create 640 root adm
}
Eu também tentei com a opção createolddir 644 raiz raiz - mesmo resultado.
As permissões estão todas em ordem. Eu não sei como resolver isso e fazer o logrotate reconhecer o comando createolddir.