我想运行rsync而无需输入密码.我知道我可以使用ssh密钥执行此操作,并且一旦将正确的密钥复制到远程服务器rsync日志就可以完成而无需
用户交互.
但是,当密钥已被更改,已被删除,或者,如果在某些自动化的情况下,服务器已被添加到要进行rsync的服务器列表,我希望rsync不会被提示输入密码.
这意味着,rsync应该只尝试使用ssh进行无密码登录,如果不起作用,则不必处理密码提示和可能的冗长超时.
您可以将SSH客户端配置为不尝试密码身份验证:
rsync -e 'ssh -o PasswordAuthentication=no' ...
还有一个BatchMode
选项可以禁用密码验证并减少超时:
rsync -e 'ssh -o BatchMode=yes' ...