Назад | Перейти на главную страницу

Как запретить rsync (с использованием ssh в качестве удаленной оболочки) отображать запрос пароля

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

Однако, когда ключ был изменен, был удален или, скажем, в случае некоторой автоматизации, сервер был добавлен в список серверов для rsync'ed, я бы хотел, чтобы rsync не запрашивал пароль.

Это означает, что rsync должен только пытаться использовать вход без пароля с помощью ssh, и если это не сработает, продолжайте работу, не имея дело с запросом пароля и возможным длительным таймаутом.

Вы можете настроить SSH-клиент так, чтобы он не пытался аутентифицироваться по паролю:

rsync -e 'ssh -o PasswordAuthentication=no' ...

Также есть BatchMode опция, которая отключает аутентификацию по паролю и уменьшает время ожидания:

rsync -e 'ssh -o BatchMode=yes' ...