Зеркальное копирование с помощью rsync
Есть следующая система:
Около 20 хостов, с которых копируются 3 директории сертбота - renewal, live, archives. Все копируется на один резервный хост, на который переключается проект, в случае падения основного сервера. Если со старыми сертами доменов сертботу живется хорошо, то вот от конфигов в renewal ему рвет крышу, и тест вебсервера(nginx) фейлится. Бекапится все с помощью скрипта с rsync-ом. Есть ли возможность сделать зеркальное копирование директории renewal? Т.е. если я удалю домен test.com, должен удалиться домен на основном хосте, а при попытке сделать бекап, rsync чекает, что такого файла нет и тоже его удаляет на резервном хосте.
Ответы (1 шт):
rsync чекает, что такого файла нет и тоже его удаляет на резервном хосте
для этого служит опция --delete программы rsync:
$ rsync --delete прочие-опции-и-параметры
при её наличии, если на стороне-получателе присутствует файл/каталог, а на стороне-источнике такового нет, то файл/каталог будет удалён на стороне-получателе.
согласно man-странице программы rsync, момент удаления при наличии такой опции не определён. это можно изменить, употребив вместо (или вместе) одну из уточняющих опций:
--delete-before— удалять до начала передачи содержимого файлов--delete-during— удалять во время передачи--delete-after— удалять после завершения передачи--delete-delay— практически то же, что и--delete-after, за исключением использования более нового не-инкрементального алгоритма составления списка файлов на удаление.
при использовании перечисленных опций настоятельно рекомендуется сначала добавить опцию --dry-run (-n), чтобы увидеть, какие действия будут произведены программой.
доп. чтение: $ man rsync