美文网首页
使用rsync进行数据传输

使用rsync进行数据传输

作者: 无关风月只关情 | 来源:发表于2016-02-04 11:45 被阅读1084次

    rsyncscp一样,是用于服务器间数据传输的工具。相比于scp主要有以下优点:

    • 传输前会进行检测,跳过最终修改时间戳和文件大小一致的文件
    • 传输前会对数据进行压缩
    • 支持断点续传

    推荐的使用时间:

    rsync -arvzP --bwlimit=100 'hadoop@192.168.11.43:/home/data/script/sample' .
    
    重要参数说明:
    
    -P                      支持断点续传
    --progress                     显示过程
    --exclude='*shell*'        排除不需要传的文件
    --rsh='ssh -p 8005'      不是使用默认端口
    --bwlimit=100             带宽限制,单位为KBPS
    

    详细文档参照此处

    另外,经过测试,rsync本身的压缩传输功能非常好用,传输未压缩文档和压缩文档时间相差不大。
    如果只是为了传输请直接使用rsync,不要自己进行压缩-传输-解压-删除操作。因为自己写脚本处理容易出错,而来如果一个脚本中途发生错误,由于进行传输用的压缩文件在解压后被删除,重新执行需要重新拉取数据。而直接使用rsync命令可以利用它的自动跳过已下载文件和断点续传功能节省时间,避免不必要的数据拉取。

    $ time rsync -arvzP --bwlimit=100 'hadoop@192.168.1.4:/home/data/script/sample' .
    receiving file list ...
    1 file to consider
    sample
        46932272 100%  643.18kB/s    0:01:11 (xfer#1, to-check=0/1)
    
    sent 42 bytes  received 7048622 bytes  97222.95 bytes/sec
    total size is 46932272  speedup is 6.66
    rsync -arvzP --bwlimit=100 'hadoop@192.168.1.4:/home/data/script/sample' .  0.41s user 0.21s system 0% cpu 1:11.67 total
    
    $ time rsync -arvzP --bwlimit=100 'hadoop@192.168.1.4:/home/data/script/sample.tar.gz' .
    receiving file list ...
    1 file to consider
    sample.tar.gz
         7078285 100%   99.77kB/s    0:01:09 (xfer#1, to-check=0/1)
    
    sent 42 bytes  received 7080798 bytes  100437.45 bytes/sec
    total size is 7078285  speedup is 1.00
    rsync -arvzP --bwlimit=100  .  0.18s user 0.18s system 0% cpu 1:09.55 total
    

    相关文章

      网友评论

          本文标题:使用rsync进行数据传输

          本文链接:https://www.haomeiwen.com/subject/nupekttx.html