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