Ubuntu 16.04 rsync通过ssh提示我输入密码,如何让它成为一个cron工作?

Ubuntu 16.04如何安装rsync服务器供其他系统使用cron通过ssh访问

设置:系统“prime”与Ubuntu 16.04和第二个硬盘驱动器只是为了备份。

/ dev / sdb1通过使用blkid安装在/ mnt获取uuid然后在/ etc / fstab中添加一行

我为主要启动SSD内容的第一个备份创建了一个名为/ mnt / full / prime的子目录。

– >运行命令:

sudo rsync -aAXv / --delete --ignore-errors --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt/full/prime 

确实将根文件系统的一个漂亮的镜像副本放到该目录/ mnt / full / prime中

它非常酷 – 就像带有/ MIR选项的Robocopy一样 – 它只传输更改,因此在第一次复制文件后运行速度要快得多。


现在,为了让其他人能够访问,我找到了这篇文章

如何使用rsync在Linux上备份数据

它说要运行以下命令:

 sudo apt-get install ssh rsync 

它安装正常。
–EDIT:事实certificate这是不必要的。 –END编辑 –

我的所有系统都在两个方向上设置了无密码登录。

 ssh-keygen ssh-copy-id -i ~/.ssh/id_rsa.pub  

我对无密码scp副本和ssh没有任何问题。

然后我在mnt / full下创建了一个子目录,用于我的下一个系统“solar” – / mnt / full / solar并使用ssh进入Raspbian系统“solar”我发出了相同的rsync命令,但目标目录是pi @ prime:的/ mnt /全/太阳能

 mkdir /mnt/full/solar ssh solar sudo rsync -aAXv / --delete --ignore-errors --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} pi@prime:/mnt/full/solar 

但它提示我输入pi @ prime的密码 – rsync不尊重正常的无密码登录设置。

输入密码后,副本正常进行。

所以现在一切似乎都很好,但如果要提示输入密码,这将无法作为日常的cron工作。

问题在于标题: Ubuntu 16.04 rsync通过ssh提示我输入密码,如何使它成为一个cron工作?

这应该这样做:

 sudo rsync -e 'ssh -i /path/to/pi's/id_rsa' -aAXv / --delete --ignore-errors --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/m‌​nt/*","/media/*","/l‌​ost+found"} pi@prime:/mnt/solar