天天看點

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

這一節學習了壓縮,歸檔以及如何利用scp和rsync的傳送檔案。

歸檔(archive)和壓縮(compress)是兩個不同的概念,盡管我們經常放在一起使用。歸檔類似打包的概念,把一堆内容放入一個檔案;而壓縮則是把歸檔好的檔案進行壓縮以便節約空間。

先看看歸檔,tar指令,最常用的是 tar -cvf, c=create(建立),v=verbose(詳細),f=file(檔案名)這樣會建立一個歸檔的tar檔案

可以通過-t 來檢視已經建立的歸檔檔案的内容

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

取消歸檔很簡單,把 c(建立)替換成 x (extract,解壓)就行了

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

接下來看看壓縮,rhel常用的壓縮方式有 gzip,bzip2,zip

做個試驗,首先建立一個100m的資料塊

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

看看大小

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

用gzip進行壓縮

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

壓縮之後變成100k了,注意壓縮檔案的字尾變成gz了

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

看看gzip的文法,如果希望解壓 用-d就行了

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

類似的,我們可以用bzip2來壓縮和解壓,字尾變成了bz2

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

或者zip和unzip來壓縮和解壓,注意zip是windows和linux都通用的格式

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

如何把歸檔和壓縮指令放在一起使用呢?

例如,可以用z代表gzip,j代表bzip2 生成的檔案字尾使用.tar.gz 或者 tar.bz2

利用tar和gzip進行歸檔壓縮和解壓

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞
RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

利用tar和bzip2進行歸檔壓縮和解壓

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞
RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

接下來看看本節的第二個部分,如何進行檔案的傳遞。這裡學習了scp和rsync指令,這兩個指令都是基于ssh的,是以如果熟悉前面的ssh,這裡學習很容易。

首先傳遞一個之前的歸檔壓縮檔案到遠端伺服器,因為我之前已經配置過root賬戶的密鑰了,是以這裡确認了指紋資訊之後直接就傳送過去了

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

檢視确認一下

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

類似的,我也可以指定使用者來傳遞,比如我用beanxyz來傳遞,這個賬戶沒有配置密鑰,那麼就通過密碼來進行驗證。

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

确認一下

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

注意,使用上面的指令之前,必須确認openssh已經在雙方伺服器安裝,如果是最小化界面安裝,這個包是沒有的,需要手動安裝

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

上面的例子是拷貝一個檔案,如果拷貝一個目錄呢?

直接拷貝會報錯,這個和cp指令差不多,需要-r 進行遞歸的操作

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

最後我們看看另外一個指令 rsync,這個指令在備份檔案的時候很常見。這個指令的最大好處是可以進行同步檔案。

比如 -a 可以直接歸檔了,簡單的說是保持檔案所有的權限,時間戳和快捷方式

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞
RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

豆子個人習慣喜歡加vv參數, 這樣可以超詳細的列出拷貝的内容是否最新,有的時候拷貝幾個t的檔案,還需要根據需要重定向正确結果和錯誤的結果,以便查詢

RHCE 學習筆記(12) 歸檔壓縮和檔案傳遞

喜歡圖像界面的話,還可以下載下傳安裝grsync,這個軟體我曾經試過在windows 下面也是可以運作的。

繼續閱讀