我有一个脚本,借助 crontab 每天运行,它在 xubuntu 12.10 VM 上运行良好。我想在干净的 Xubuntu 16.04 上创建此 VM 的副本,由于 rsync 问题,几乎所有东西都正常运行,但这个脚本除外。
rsync -azh --delete vbackup@perforce:/var/p4depot /tmp/p4depot
原始服务器上的这一行运行正常,但在我创建的克隆上,脚本会询问我 vbackup 的密码。在整个脚本运行过程中,这种情况会发生多次。因为我想用我的 crontab 运行它,所以我不想每次调用 rsync 时都输入密码!
我读到它与 ssh 配置有关,但我不知道如何复制 ssh 配置以使我的 rsync 工作,而无需修改它连接到的所有 VM。
我是一个真正的 Linux 初学者,所以如果有路径或命令要运行,请详尽说明,谢谢 :)!
答案1
好的,我找到了错误所在。设置 ssh 后,系统仍要求我输入密码。我的 python 脚本被调用为
sudo python3.5 myscript.py
之所以有 sudo,是因为如果没有它,我就会遇到权限错误。我解决了权限错误,删除了 sudo,脚本不再询问我的密码。最后,我还是重新设置了 ssh,我发现这个帖子非常有帮助:https://superuser.com/questions/555799/how-to-setup-rsync-without-password-with-ssh-on-unix-linux
谢谢 :)