rsync免密码远程复制文件

目标:

从云服务器(112.77.69.212)把mongodb中的文件同步到本地。

步骤一:在云服务器上创建用户

$ adduser monbak
$ passwd monbak

步骤二:设置免密登录

登录到本地主机, 创建公钥并将公钥拷贝到云服务器

$ ssh-keygen
$ ssh-copy-id -i ~/.ssh/id_rsa.pub monbak@112.77.69.212 -p 31522

步骤三:使用rsync命令将数据同步到本地

$ /usr/bin/rsync -avrp -e 'ssh -p 31522' monbak@112.77.69.212:/monbak/ /data/

Tips:

直接执行步骤三可以复制成功,但是需要输入密码,不能写到脚本里。
使用root用户执行步骤三和步骤四操作上也没有问题,但是安全隐患太大,本地服务器不应该有线上环境的面密登录方式,因此还是建议创建单独的用户进行备份。

rsync的用法:
https://www.cnblogs.com/f-ck-need-u/p/7220009.html#auto_id_8

原文地址:https://www.cnblogs.com/bugutian/p/11475181.html