6

У меня есть такой сценарий: dir1 /home/arek/ , dir2 /mnt/home/arek/ (смонтированный с помощью sshfs).

Когда я выдаю : rsync -avz /mnt/home/arek /home/arek , я получаю /home/arek/arek со всем содержимым. Некоторые каталоги в /home , некоторые нет. Нет ссылок (ни жестких, ни символических).

Кто-нибудь знает, что происходит и как защитить себя?

2 ответа2

8

rsync(1) требователен к завершающему слешу. Попробуй это:

rsync -avz /mnt/home/arek/ /home/arek

Смотрите главную страницу для всех деталей.

Обновить

Если один из путей смонтирован через sshfs, я предлагаю использовать rsync(1) другому:

rsync -avzP -e ssh username@remotesystem:/home/arek/ /home/arek

(-e ssh может быть избыточным на этом этапе; rsync(1) используется по умолчанию для rsh !)

-P просит перезапустить частичную передачу файлов (очень полезно для сетевых ссылок, которые могут погибнуть) и показывает прогресс (который полезен для сетевых ссылок, поскольку они часто медленнее, чем копии с диска на диск).

Более того, rsync(1) очень умно выполняет проверки хэширования на обеих конечных точках, когда вызывается таким образом - пропускная способность диска с процессором намного лучше, чем с диска по ssh по сети, по ssh на пропускную способность драйвераkyky файловой системы - так что вы будете много передавать меньше данных по сети.

Обратите внимание: если вы добавляете один байт к каждому файлу, rsync(1) поверх sshfs будет вынужден передавать содержимое каждого отдельного файла из источника в место назначения. Вместо этого rsync(1) поверх ssh(1) запустит rsync(1) на удаленной конечной точке и при необходимости выполнит вычисления хэширования на обеих машинах и, вероятно, будет передавать только последние 8192 байта каждого файла.

0

Он копирует каталог /mnt/home/arek в /home/arek , когда вам нужно скопировать содержимое /mnt/home/arek . Вы можете получить это поведение, добавив косую черту к имени исходного каталога: rsync -avz /mnt/home/arek/ /home/arek . Да, это немного странно. Это задокументировано на странице руководства rsync под заголовком "ИСПОЛЬЗОВАНИЕ", но там не очень четко объяснено.

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