WordPress

推荐列表 站点导航

当前位置:首页 > 建站教程 > WordPress >

linux下如何实现快速拷贝大文件

来源:互联网  作者:网友投稿  发布时间:2021-01-06 07:18
linux下如何实现快速拷贝大文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值...

linux下如何实现快速拷贝大文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

拷贝数据

远程拷贝数据的时候,我们一般使用rsync命令,但是如果拷贝大量的小文件,会导致rsync的传输速度慢。使用tar pv lz4打包压缩传输,可以解决这问题,使用这个方法,等同于使用scp、rsync传输大文件。

实测,使用rsync传输1200G,单个文件大小为几十KB~2GB,千兆网卡,需要同时跑6个rsync才能把带宽跑满,每个速度20MB左右,速度波动大。每分钟可以拷贝4.5GB左右。

但是,使用tar pv lz4,跑一个就可以了,而且速度波动小。每分钟可以拷贝6.8GB左右。

rsync使用例子

rsync安装:yum install -y rsync

# 推送
[root@vm5 ~]# rsync -auvzP -e "ssh -p22" mssh.tar.gz [email protected]:/data/
sending incremental file list
mssh.tar.gz
1,977 100%  0.00kB/s  0:00:00 (xfr#1, to-chk=0/1)
sent 2,069 bytes received 35 bytes 4,208.00 bytes/sec
total size is 1,977 speedup is 0.94

# 拉取
[root@vm5 ~]# rm -f mssh.tar.gz
[root@vm5 ~]# rsync -auvzP -e "ssh -p22" [email protected]:/data/mssh.tar.gz .
receiving incremental file list
mssh.tar.gz
1,977 100%  1.89MB/s  0:00:00 (xfr#1, to-chk=0/1)
sent 43 bytes received 2,069 bytes 4,224.00 bytes/sec
total size is 1,977 speedup is 0.94  

参数auvzP解释:参数a是归档传输,保留文件属性,u是更新传输,源文件修改时间较新,则传输。v是显示详细过程,z是压缩传输,P是断点传输。

注意:rsync 传输文件夹时候,folder/ 带/则是传输目录下的文件,不带/是把文件夹也传输过去。

使用压缩传输

安装pv、lz4工具

注意:服务器两端都要安装。

pv在yum源里面没有,可以到pv官网找

# 去pv官网,搞到个rpm包链接,直接rpm命令安装

[root@vm5 ~]# rpm -ivh

获取

警告:/var/tmp/rpm-tmp.mFbA6u: 头V3 DSA/SHA1 Signature, 密钥 ID 3fc56f51: NOKEY

准备中...             ################################# [100%]

正在升级/安装...

1:pv-1.6.6-1            ################################# [100%]

# lz4 可以直接yum安装

[root@vm5 ~]# yum install -y lz4  

使用

[root@vm5 ~]# time tar -c go |pv |lz4 -B4 |ssh -p22 -c aes128-ctr 192.168.176.11 "lz4 -d |tar -xC /data/"

using blocks of size 64 KB

18.1MiB 0:00:00 [49.5MiB/s] [  <=>                                                                                   ]

real    0m0.376s

user    0m0.080s

sys    0m0.108s

# 对比rsync

[root@vm5 ~]# time rsync -auvzP -e "ssh -p22" go 192.168.176.11:/data/

......

sent 11,741,677 bytes received 10,451 bytes 7,834,752.00 bytes/sec

total size is 18,502,481 speedup is 1.57

real 0m1.130s

user    0m0.797s

sys    0m0.160s

[root@vm5 ~]#  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

linux下如何实现快速拷贝大文件 (https://www.wpmee.com/) WordPress教程 第1张

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/jz/wp/11378.shtml

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

linux下如何实现快速拷贝大文件

2021-01-06 编辑:网友投稿

linux下如何实现快速拷贝大文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

拷贝数据

远程拷贝数据的时候,我们一般使用rsync命令,但是如果拷贝大量的小文件,会导致rsync的传输速度慢。使用tar pv lz4打包压缩传输,可以解决这问题,使用这个方法,等同于使用scp、rsync传输大文件。

实测,使用rsync传输1200G,单个文件大小为几十KB~2GB,千兆网卡,需要同时跑6个rsync才能把带宽跑满,每个速度20MB左右,速度波动大。每分钟可以拷贝4.5GB左右。

但是,使用tar pv lz4,跑一个就可以了,而且速度波动小。每分钟可以拷贝6.8GB左右。

rsync使用例子

rsync安装:yum install -y rsync

# 推送
[root@vm5 ~]# rsync -auvzP -e "ssh -p22" mssh.tar.gz [email protected]:/data/
sending incremental file list
mssh.tar.gz
1,977 100%  0.00kB/s  0:00:00 (xfr#1, to-chk=0/1)
sent 2,069 bytes received 35 bytes 4,208.00 bytes/sec
total size is 1,977 speedup is 0.94

# 拉取
[root@vm5 ~]# rm -f mssh.tar.gz
[root@vm5 ~]# rsync -auvzP -e "ssh -p22" [email protected]:/data/mssh.tar.gz .
receiving incremental file list
mssh.tar.gz
1,977 100%  1.89MB/s  0:00:00 (xfr#1, to-chk=0/1)
sent 43 bytes received 2,069 bytes 4,224.00 bytes/sec
total size is 1,977 speedup is 0.94  

参数auvzP解释:参数a是归档传输,保留文件属性,u是更新传输,源文件修改时间较新,则传输。v是显示详细过程,z是压缩传输,P是断点传输。

注意:rsync 传输文件夹时候,folder/ 带/则是传输目录下的文件,不带/是把文件夹也传输过去。

使用压缩传输

安装pv、lz4工具

注意:服务器两端都要安装。

pv在yum源里面没有,可以到pv官网找

# 去pv官网,搞到个rpm包链接,直接rpm命令安装

[root@vm5 ~]# rpm -ivh

获取

警告:/var/tmp/rpm-tmp.mFbA6u: 头V3 DSA/SHA1 Signature, 密钥 ID 3fc56f51: NOKEY

准备中...             ################################# [100%]

正在升级/安装...

1:pv-1.6.6-1            ################################# [100%]

# lz4 可以直接yum安装

[root@vm5 ~]# yum install -y lz4  

使用

[root@vm5 ~]# time tar -c go |pv |lz4 -B4 |ssh -p22 -c aes128-ctr 192.168.176.11 "lz4 -d |tar -xC /data/"

using blocks of size 64 KB

18.1MiB 0:00:00 [49.5MiB/s] [  <=>                                                                                   ]

real    0m0.376s

user    0m0.080s

sys    0m0.108s

# 对比rsync

[root@vm5 ~]# time rsync -auvzP -e "ssh -p22" go 192.168.176.11:/data/

......

sent 11,741,677 bytes received 10,451 bytes 7,834,752.00 bytes/sec

total size is 18,502,481 speedup is 1.57

real 0m1.130s

user    0m0.797s

sys    0m0.160s

[root@vm5 ~]#  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

linux下如何实现快速拷贝大文件 (https://www.wpmee.com/) WordPress教程 第1张

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/jz/wp/11378.shtml

相关文章

风云图片

推荐阅读

返回WordPress频道首页