rsync同步文件

一、基本同步命令

将远程服务器192.168.1.11上/home/oschina/maven目录下的所有文件,以增量的方式,同步到本地服务器/mnt/raid/maven目录下。

nohup rsync -avz root@192.168.1.11:/home/oschina/maven/ /mnt/raid/maven

二、问题描述

由于一般用rsync同步的文件都是非常多的,可能要好多天才能同步完。我们就会希望将rsync任务做成守护进程daemon。

nohup rsync -avz root@192.168.1.11:/home/oschina/maven/ /mnt/raid/maven

执行后,输入密码。 按下CTRL+z,将当前任务放入后台运行,并暂停。 执行jobs命令 查看当前任务列表,会发现刚才的任务是Stop状态。 执行bg 1命令(1就是rsync任务在jobs列表中的id,不是pid),启动后台任务。 执行fg 1命令,将后台任务放入前台执行。 但是这里的问题是,当exit登出当前shell后,这些任务就停止了,也就是说这些任务是依赖当前shell的。

三、新的问题

当然我们马上会想到

nohup rsync -avz root@192.168.1.11:/home/oschina/maven/ /mnt/raid/maven

但是新的问题来了,无法输入认证密码啊。 rsync daemon运行模式,有一个参数--password-file,但是我没有耐心去配置这个了,而且不通用。

四、解决问题

现在问题就是如何输入密码。那能不能无密码登录执行呢?能!

1.本地服务器生成公钥和私钥

ssh-keygen

2.将本地生成的公钥复制到远程服务器

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

如果没有ssh-copy-id命令,直接cat ~/.ssh/id_rsa.pub将内容复制到远程主机的~/.ssh/authorized_keys文件中保存即可。

3.直接登录,或者rsync,或者其他操作,都不需要输入密码了。完美。

转载于:https://my.oschina.net/ijustdoit/blog/479885

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值