我有一个 bash 脚本来同步两台计算机之间的数据。它工作正常,但每次调用 rsync 命令时我都必须输入密码。
#!/bin/bash
sourceIP="192.168.178.128"
sourceUser="user1"
destinationUser="user2"
function sync()
{
rsync --archive --progress -v -e "ssh -l $sourceUser " $sourceIP:/home/$sourceUser/$1/ /home/$destinationUser/$1
}
sync Pictures
sync Music
sync Videos
sync Documents
如何将密码(通过提示)存储在变量中并将其传递给 rsync/ssh?
答案1
您真正想做的是在服务器之间设置公钥,以便它们相互“信任”并且不需要密码。
在这里阅读:
http://www.thegeekstuff.com/2011/07/rsync-over-ssh-without-password/