Chi*_*ers 6 linux backup ssh rsync passwords
我已按照以下指南在本地计算机和远程服务器之间使用 SSH 设置 Rsync:
我以 root 身份执行了以下操作:
rsync -avz -e ssh /home/user/dir root@192.168.200.10::Backup/dir
-> 提示输入密码
ssh-keygen
-> 密钥生成
ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.200.10
-> 确认密钥已复制
ssh 192.168.200.10
-> 无需密码即可访问远程服务器
rsync -avz -e ssh /home/user/dir root@192.168.200.10::Backup/dir
-> 提示输入密码
我可以在不提示输入密码的情况下通过 SSH 连接到远程服务器,但在使用 rsync 时这样做,这并不奇怪吗?
我可以.ssh/authorized_keys
在远程服务器上看到。
我哪里做错了?
您正在混合两种单独的连接模式:使用远程 shell ( -e ssh
) 和不使用远程 shell,通过 a rsync daemon
(由双冒号标识)。
手册指出:
连接到 RSYNC 服务器
也可以在没有远程 shell 的情况下使用 rsync 作为传输。在这种情况下,您将连接到在 TCP 端口 873 上运行的远程 rsync 服务器。
……您可以使用双冒号 :: 而不是单冒号来分隔主机名和路径,或者使用 rsync:// URL。
......远程服务器上的某些路径可能需要身份验证。如果是这样,那么您在连接时将收到密码提示。您可以通过将环境变量 RSYNC_PASSWORD 设置为您要使用的密码或使用 --password-file 选项来避免密码提示。这在编写 rsync 脚本时可能很有用。
获得无密码身份验证的最简单方法可能是修改上面的命令,如下所示:
rsync -avz -e ssh /home/user/dir root@192.168.200.10:/absolute/path/to/Backup/dir
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
27070 次 |
最近记录: |