1

У меня есть две Linux-коробки, которые я хотел бы синхронизировать. Я вижу параметр -avz синхронизирует удаленный с локальным, но новые локальные файлы не выдвигаются. Как мне это сделать?

2 ответа2

1

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

  • В отличие от простых утилит зеркалирования или резервного копирования, Unison может работать с обновлениями обеих реплик распределенной структуры каталогов. Обновления, которые не конфликтуют, распространяются автоматически. Конфликтующие обновления обнаруживаются и отображаются.
  • Unison работает между любой парой компьютеров, подключенных к Интернету, общаясь по прямой линии сокета или туннелируя по зашифрованному соединению ssh. Он осторожен с пропускной способностью сети и хорошо работает на медленных каналах, таких как соединения PPP. Передача небольших обновлений в большие файлы оптимизируется с использованием протокола сжатия, аналогичного rsync.
  • Унисон устойчив к неудачам. Осторожно всегда оставлять реплики и собственные частные структуры в разумном состоянии, даже в случае ненормального завершения или сбоев связи.
  • Унисон свободен; полный исходный код доступен по открытой лицензии GNU.
0

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

См. Также: Rsync, двусторонняя синхронизация и синхронизация операций удаления файлов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .