搜尋此網誌
RHCE - 檔案壓縮
GZIP & BZIP2
Linux系統中最常使用的壓縮指令為gzip以及bzip2,但是這兩種指令只能針對單一檔案壓縮。
雖然gzip以及bzip2也可以對目錄壓縮,不過是將目錄中的檔案壓縮成個別的壓縮檔。
gzip利用指令 #gzip [檔名] 進行壓縮,#gzip -d [檔名] 進行解壓縮。
gzip的壓縮檔副檔名是*.gz。
bzip2利用指令 #bzip2 -z [檔名] 進行壓縮 #bzip2 -d [檔名] 進行解壓縮。
bzip2的壓縮檔副檔名是*.bz2。
TAR
對於多檔時,例如要備分系統,需要先將這些檔案進行打包的動作,之後才可加以壓縮。
tar可以將多個檔案打包成一個檔案,再經由gzip或者bzip2的方式製作成壓縮檔。
tar的應用除了打包壓縮,備份檔案,同時也可以配合rsnyc進行遠端備份的作業。
tar的指令為 #tar [參數] [檔案或目錄]。
tar是利用參數控制壓縮或解壓縮,-c為壓縮,-x為解壓縮。
tar可以同時使用gzip或bzip2來壓縮打包好的檔案,-z為gzip,-j為bzip2。
-v是觀察模式,會顯示目前壓縮的進度。
-f為指定壓縮檔檔名,後面必須要接上指定的壓縮檔檔名。
-C為指定解壓縮位置,後面必須接上解壓縮路徑,若不加-C則解壓縮到當前目錄。
例如要打包/etc下所有檔案至/tmp,並使用gzip壓縮。
則輸入指令 #tar -zcvf /tmp/etc.tar.gz /etc。
若要改成bzip2壓縮模式,則輸入#tar -jcvf /tmp/etc.tar.gz /etc。
如此便會再/tmp之下依照選擇的壓縮方式產生壓縮檔。
若要將檔案解壓縮,例如將/tmp/etc.tar.gz解壓縮回/etc。
則輸入 #tar -zxv /tmp/ect.tar.gz。
若當前目錄不是在根目錄,則必須在後面指定路徑 #tar -zxv /tmp/etc.tar.gz -C /。
如此便會在根目錄下解壓縮檔案。