Дублировать источник rsync

Дублировать источник rsync

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

Есть ли другой способ скопировать исходные файлы на новый жесткий диск?

решение1

Это происходит из-за того, что при копировании файлов метка времени была изменена. Вы можете сохранить атрибуты файлов, включая timestmap, используя -pопцию. man cpПодробнее см.

решение2

это из-за временных меток, которые rsync использует для проверки наличия каких-либо изменений — cp по умолчанию не сохраняет их, поэтому теперь rsync придется проверять контрольную сумму содержимого каждого файла, прежде чем он сможет решить, что содержимое не изменилось, а изменились только метаданные.

решение3

Я бы выбрал другой вариант cp.

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

Связанный контент