2

我想设置一个自动rsync作业,将我的 OS X 机器上的一堆用户帐户备份到 linux 文件服务器。我已经设置了从我的帐户到另一台机器的无密码 ssh,它工作得很好,所以我尝试使用这个命令:

sudo rsync -avz /Users/jbloggs myserv:/var/Backup/

我在哪里myserv设置了别名~/.ssh/config。我遇到的问题是我必须使用 sudo 才能使该命令正常工作——在我的个人帐户下,我无权访问其他用户的主目录来复制文件以进行备份。该命令在没有 sudo 的情况下在我自己的帐户上运行良好,但是当我在 sudo 下运行时,它不再查看我的~/.ssh/config内容(因此它抱怨“未知主机 myserv”)。

如何让 rsync 在 sudo 下运行以仍然查看我的个人信息~/.ssh/config

谢谢!

4

1 回答 1

5

您可以使用

ssh -i /Users/myuser/.ssh/id_rsa -F /Users/myuser/.ssh/config login@host

让 ssh 使用您的配置/密钥文件。使用“-v”检查它正在使用哪个文件。您还可以将您的配置 / id 复制到 /var/root/.ssh,默认情况下将在通过 sudo 使用 ssh 时使用。

要将这些选项传递给 rsync,您必须像这样设置“--rsh”/“-e”:

rsync -e "ssh -i ... -F ..."
于 2008-11-23T13:47:51.163 回答