rsync: один слеш и флаг --delete

Слеш в конце источника меняет смысл команды. --delete без пробного прогона — плохая идея.

· 2 мин

Слеш в конце пути-источника решает, что копируется: сам каталог или его содержимое.

rsync -a src  dst/   # получится dst/src/...
rsync -a src/ dst/   # получится dst/...

Для получателя слеш значения не имеет, для источника — принципиальное.

--delete только после пробного прогона

С --delete rsync удаляет в получателе всё, чего нет в источнике. Ошибка в пути — и бэкап превращается в пустой каталог.

rsync -a --delete -n -i src/ dst/

-n ничего не меняет, а -i печатает, что было бы сделано: строки *deleting сразу видны. Только после просмотра — тот же запуск без -n.

Для удалённых копий полезен --partial, чтобы прерванная передача большого файла продолжилась, а не началась заново.

logbookdev — записки инженера эксплуатации. Нашли неточность или знаете способ лучше — значит, будет следующая запись.

Ещё по теме

Архив →