При попытке настроить logrotate для 10 ежедневных вращений в моей папке дампа у меня есть 11 вращений (mydump.sql, mydump.sql.1... mydump.sql.11), почему?
Это - мой logrotate конфигурационный файл в/etc/logrotate.d/(я выполняю сервер Ubuntu 12.4 LTS с logrotate 3.7.8):
/home/alepac/dumps/mydump.sql {
rotate 10
daily
nomissingok
create
nocompress
nocopy
prerotate
mysqldump -u alepac -pThisIsNotMyPwd myDatabase > /home/alepac/dumps/mydump.sql
endscript
postrotate
rsync -avz --partial --delete /home/alepac/dumps/ my-remote-server.no-ip.biz:/home/alepac/db-backups/dbs/customer/ > /tmp/rsync.stdout 2> /tmp/rsync.stderr
endscript
}
Для лучше explaination, я поворачиваю дампы mysql базы данных; я делаю, дамп на предварительно вращаются, затем я поворачиваю и синхронизирую dir дампа с удаленной машиной с помощью rsync на, поствращаются. Наконец create
опции делают новый нуль измеренным дампом для обеспечения следующего вращения.
Проблема вызвана rsync. Сценарий postrotate выполняется перед удалением старых файлов журнала, поэтому в удаленном месте у меня всегда есть файл mydump.sql.11. Более того, если постскриптум не удается (например, при возникновении сетевой проблемы, rsync не работает), остальные действия не выполняются, и поэтому logrotate не удаляет файл mydump.sql.11.