[RHCE] File Compression
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 /。如此便會在根目錄下解壓縮檔案。
留言
張貼留言