1

Игнорируя проблемы безопасности, у меня есть следующий скрипт, который синхронизирует мою музыкальную библиотеку с моего MacBook Pro (под управлением Snow Leopard) с хранилищем файлов (CentOS 4) в моей сети:

rsync -rav --progress --partial -e "ssh" ~/Music/iTunes/* user@scramasax:~/music/iTunes-scissor:~

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

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

1 ответ1

1

Обратите внимание, что эти разделы из man rsync говорят о ssh . Вам, вероятно, придется настроить ключевые файлы.

--password-файл
Эта опция позволяет вам указать пароль в файле для доступа к демону rsync. Файл не должен быть доступен для чтения. Он должен содержать только пароль в виде одной строки.

          This option does not supply a password to a remote shell  trans‐
          port  such  as  ssh; to learn how to do that, consult the remote
          shell's documentation.  When accessing an rsync daemon  using  a
          remote  shell  as  the  transport,  this  option only comes into
          effect after the remote shell finishes its authentication  (i.e.
          if  you  have  also  specified a password in the daemon's config
          file).

RSYNC_PASSWORD
Установка RSYNC_PASSWORD на требуемый пароль позволяет запускать аутентифицированные соединения rsync с демоном rsync без вмешательства пользователя. Обратите внимание, что это не предоставляет пароль для удаленного транспорта оболочки, такого как ssh; чтобы узнать, как это сделать, обратитесь к документации по удаленной оболочке.

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