Linux中同步数据之scp VS rsync

##scp和rsync简介

项目开发中经常有服务器之间同步数据的需求,在Linux中提供了两个命令,scp和rsync,这两个命令不仅仅是可以使用在机器之间同步数据,在一个机器内部也是可以进行数据的同步。但是对于scp来说,除了在机器之间或同一个机器不同目录之间进行数据同步之外,还可以与多台机器之间进行数据同步。比如你在A机器,可以对B、C两台机器上的数据进行同步,但是rsync就不可以;也就是说当rsync进行跨机器同步数据的时候只可以在本机与另外一台机器之间进行数据的同步。

scp

scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。从这可以看出它是一个安全的、加密过了的拷贝,因此它是可以使用在机器之间进行数据的拷贝。

rsync

该协议主要目的是在两台机器之间进行数据同步的时候,尽量少的传递数据。rsync可以聪明的在两台机器之间进行数据的同步,并通过对比算法减少数据的传输。rsync的作用就是当要同步数据的对端已经存在部分要同步数据的情况下,通过使用rsync可以只传递增量数据。假设A机器上有一个名为test.txt的文件1G,在文件末尾只加了一个句号,这时候要同步到B机器上去。如果B机器上已经存在文件test.txt,使用scp要拷贝传输1G数据过去,而rsync只需要传输修改后的数据,也就是说只传递一个句号,整个任务就结束了;如果B机器上不存在文件test.txt,使用rsync和scp传输的时长相差不大。

rsync 和 scp 的区别

rsync 是分块校验+传输,scp 是整个文件传输。rsync 比 scp 有优势的地方在于单个大文件的一小部分存在改动时,只需传输改动部分,无需重新传输整个文件。如果传输一个新的文件,理论上 rsync 没有优势。另外,rsync 不是加密传输,而 scp 是加密传输,使用时可以按需求选择。
下面来看一下scp和rsync具体的执行情况:
文件大小如下图所示:
描述
scp三次所需要的时间,第一次24.652秒,第二次24.466秒,第三次33.496秒,三者几乎在一个量级别,考虑到系统当时的负载差异,可视为三次执行时间大致相同。
[外链图片转存失败(img-d43sYRgQ-1563100759488)(https://img-blog.csdn.net/20180317181713928?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTYyMjYzMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)]
rsync三次所需的时间,第一次23.602秒,第二次0.114秒,第三次0.044秒,第一次是新建,第二次,第三次是在文件存在的情况下同步的。可以看出第二次第三次执行时间远远小于第一次。
这里写图片描述

++++++++++++++++++++分割线++++++++++++++++++++++++++
没事自己搞了一个特价优惠券网站,反正自己也要上淘宝天猫买东西,不如一起买买买,大家觉得划算就下手,不需要就看看。
淘宝天猫领券地址:贝优网 http://beiuwang.com
APP领券地址:https://www.pgyer.com/nO5g(仅限安卓手机,苹果手机敬请期待),
直接扫码安装:
[外链图片转存失败(img-ZHhrpsyp-1563100759491)(https://www.pgyer.com/app/qrcode/nO5g)]
在网站领优惠券后,复制淘口令打开淘宝,可直接减价购买
感谢有你们,thx

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值