我想通过 shell 脚本(无需密码)在两个不同的服务器之间传输文件
我按照本教程设置了 SSH 密钥:http://www.cyberciti.biz/tips/ssh-public-key-based-authentication-how-to.html
然后我尝试使用以下命令将文件 test.txt 从 server1 传输到 server2:
rsync -avz /home/tasklitetest/test.txt [email protected]:/home/tasklite/
该命令似乎执行起来没有问题,因为我得到以下内容:
[2] 4920
[1] Done rsync -avz /home/tasklitetest/test.txt [email protected]
[ps115171]$ sending incremental file list
sent 62 bytes received 12 bytes 148.00 bytes/sec
total size is 396 speedup is 5.35
但是我在另一台服务器上的 /home/tasklite/ 中没有找到文件
答案1
您正在连接的服务器是否真的名为“ps27670.dreamhost.com:”?或者它应该是您在复制/粘贴时弄乱的“:”?您收到的错误消息表明您有一个多余的“&”,它告诉 shell 将 rsync 命令放到后台。
如果是这种情况,请清理你的命令并重试。你可能需要这个:
rsync -avz /home/tasklitetest/test.txt [email protected]:/home/tasklite/