通过 ssh 进行 rsync,无需每次都输入密码

通过 ssh 进行 rsync,无需每次都输入密码

我有一个 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/

相关内容