Назад | Перейти на главную страницу

Синтаксис rsync для создания одинаковых файлов?

Я собираюсь перенести большой веб-сайт на новый сервер (CentOS на обоих концах) - в настоящий момент на новом сервере запущена старая копия всех файлов, что, как мне кажется, я делал с SCP изначально. После создания этой копии я внес некоторые изменения в некоторые файлы на новом сервере и создал несколько в рамках тестирования.

Я надеюсь снова синхронизировать все с помощью rsync (поскольку это кажется наиболее подходящим инструментом), но я не уверен, как удалить все, что было изменено на новом сервере, и заменить его старыми файлами на существующий сервер, без повторного копирования целой кучи идентичных файлов.

Синтаксис -I, кажется, делает то, что я хочу, игнорируя даты, я могу заставить его заменить все, что отличается, но как мне удалить файлы, которых не должно быть, и получить истинную копию 1: 1 на обоих концах?

Взгляните на --delete вариант:

--delete                delete extraneous files from dest dirs

что-то вроде этого:

/usr/bin/rsync -avz --delete --ignore-existing /document/root/ user@newserver:/document/root/ 

Вы также можете использовать --checksum вариант вместо использования по умолчанию «быстрой проверки».