溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

linux下快速拷貝大文件的方法

發(fā)布時(shí)間:2020-07-28 10:50:26 來源:億速云 閱讀:481 作者:小豬 欄目:服務(wù)器

這篇文章主要講解了linux下快速拷貝大文件的方法,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。

拷貝數(shù)據(jù)

遠(yuǎn)程拷貝數(shù)據(jù)的時(shí)候,我們一般使用rsync命令,但是如果拷貝大量的小文件,會(huì)導(dǎo)致rsync的傳輸速度慢。使用tar pv lz4打包壓縮傳輸,可以解決這問題,使用這個(gè)方法,等同于使用scp、rsync傳輸大文件。

實(shí)測(cè),使用rsync傳輸1200G,單個(gè)文件大小為幾十KB~2GB,千兆網(wǎng)卡,需要同時(shí)跑6個(gè)rsync才能把帶寬跑滿,每個(gè)速度20MB左右,速度波動(dòng)大。每分鐘可以拷貝4.5GB左右。

但是,使用tar pv lz4,跑一個(gè)就可以了,而且速度波動(dòng)小。每分鐘可以拷貝6.8GB左右。

rsync使用例子

rsync安裝:yum install -y rsync

# 推送
[root@vm5 ~]# rsync -auvzP -e "ssh -p22" mssh.tar.gz root@192.168.176.11:/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" root@192.168.176.11:/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

參數(shù)auvzP解釋:參數(shù)a是歸檔傳輸,保留文件屬性,u是更新傳輸,源文件修改時(shí)間較新,則傳輸。v是顯示詳細(xì)過程,z是壓縮傳輸,P是斷點(diǎn)傳輸。

注意:rsync 傳輸文件夾時(shí)候,folder/ 帶/則是傳輸目錄下的文件,不帶/是把文件夾也傳輸過去。

使用壓縮傳輸

安裝pv、lz4工具

注意:服務(wù)器兩端都要安裝。

pv在yum源里面沒有,可以到pv官網(wǎng)找

# 去pv官網(wǎng),搞到個(gè)rpm包鏈接,直接rpm命令安裝
[root@vm5 ~]# rpm -ivh http://www.ivarch.com/programs/rpms/pv-1.6.6-1.x86_64.rpm
獲取http://www.ivarch.com/programs/rpms/pv-1.6.6-1.x86_64.rpm
警告:/var/tmp/rpm-tmp.mFbA6u: 頭V3 DSA/SHA1 Signature, 密鑰 ID 3fc56f51: NOKEY
準(zhǔn)備中...             ################################# [100%]
正在升級(jí)/安裝...
  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
# 對(duì)比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 ~]#

看完上述內(nèi)容,是不是對(duì)linux下快速拷貝大文件的方法有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI