Странное поведение rsync

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

Для лучшей видимости каждый параметр получил свою собственную строку внутри объявления массива. Тем не менее, я сделал большую ошибку, завершив каждую строку с помощью / вместо правильного \ .

Команда rsync которой мой скрипт запускается, в конечном итоге оказалась примерно такой:

rsync --verbose / --recursive / --archive / --progress source_folder destination_folder

Следующая ошибка заключалась в том, чтобы не использовать --dry-run но, к счастью, я был достаточно быстр, чтобы Ctrl + C скрипт, пока он все еще строит список файлов и имеет много ошибок, говорящих о Permission denied (13) .

Это приводит меня к моему вопросу: если вы попытались --dry-run вышеуказанную команду (с помощью --dry-run ), вы могли заметить, что rsync пересекает все из / как я предполагаю / (ошибочно?), Используемый в качестве источника и адресата.

Однако, если я пытаюсь запустить rsync --verbose test1/ --recursive test2/ --archive / --progress source_folder destination_folder , вместо test1 и test2 интерпретируется как источник и назначение, rsync снова начинает перемещение из / . Почему это?

Я не знаю, будут ли source_folder и destination_folder полностью игнорироваться или использоваться позже, так как я каждый раз source_folder из сценария, а rsync строит список файлов.

Кроме того, что могло пойти не так, если бы я не прервал первоначальный запуск, где / используется как источник и пункт назначения? Может ли rsync переписать каждый файл самим?

One Solution collect form web for “Странное поведение rsync”

То, что вы говорите rsync, – это использовать опции --verbose --recursive --archive --progress с исходными папками test1/ test2/ / source_folder и целевой папкой destination_folder , если это уже помогает. (Кроме того, возможно, вам стоит подумать о том, чтобы вытащить конечную косую черту в именах тестовых папок, чтобы получить полную папку, а не только содержимое)

  • Rsync только новые файлы с удаленного сервера
  • rsync - список только для вывода не так, как ожидалось
  • Почему, если вы не укажете --backup-dir, будет подразумеваться опция -omit-dir-times?
  • rsync для SFTP при перемещении завершенных загрузок в другую папку
  • Перевод конфигурации rdist с несколькими корнями в rsync
  • Как определить определенный системный вызов, вызванный или нет, во всем рабочем процессе?
  • RAID1 vs rsync - безопасность?
  • Сломанная труба в моем rsync.sh
  • rsync parallel vs последовательные передачи
  • rsync: как перенести абсолютные символические ссылки?
  • Оба раза «rsync» и получить его значение выхода?
  • Interesting Posts

    Самый быстрый способ найти и заменить в большом файле при замене поля в другом файле

    Частный репозиторий Debian для обслуживания выбранных пакетов выбранным машинам

    Как заставить команду NIC приступить к загрузке в RHEL 7

    Weird X11 поведение после возобновления приостановления

    Должен ли я включать конечную косую черту / в символическую ссылку в каталог?

    Bash: Как получить различный цвет для командной строки и ее выход?

    Какое выражение / логику нужно добавить в скрипт, который проверяет журнал, который меняется каждый день, поскольку он имеет встроенную в него дату

    Может ли процесс суперпользователя изменить реальный идентификатор пользователя и идентификатор группы процесса, не совпадая с данными в файле паролей?

    Что вызывает ntpq refid CRYP, когда аутентификация прошла успешно?

    Как хранить цветной текст в переменной и печатать его с цветом позже?

    Существует ли эквивалент NETCFG для Debian для Arch Linux?

    Запуск Linux от выключения питания в заданное время (и выполнение команды)?

    Переименуйте файл в другой каталог, не повторяя путь

    План 9 из книги Bell Labs

    Пользовательский режим linux сразу прерывается

    Linux и Unix - лучшая ОС в мире.