關於打包壓縮幾種格式(gzip,bzip2,xz)的試驗對比


 

要通過腳本進行備份,必然將會應用到壓縮技術,這里簡單針對幾個常見的格式進行測驗,從而得到一種合適的方式。

這里以一個應用目錄做例子:

  1. [root@isj-test-5 mnt]$du -sh *
  2. 66M isj-wiki

看到目錄大小為66M。

以下考慮壓縮比與壓縮時長兩個維度。

1,只打包。

  1. [root@isj-test-5 mnt]$time tar cf isj-wiki.tar isj-wiki
  2. real 0m2.622s
  3. user 0m0.013s
  4. sys 0m2.603s

對應解壓命令為:

  1. tar xf isj-wiki.tar

2,tar.gz格式。

注意這種格式需要安裝gzip包。

  1. yum -y install gzip

打包。

  1. [root@isj-test-5 mnt]$time tar zcf isj-wiki.tar.gz isj-wiki/
  2. real 0m4.004s
  3. user 0m3.470s
  4. sys 0m0.623s

對應解壓命令為:

  1. tar zxf isj-wiki.tar.gz

3,tar.bz2格式。

注意這種格式需要安裝bzip2包。

  1. yum -y install bzip2

打包。

  1. [root@isj-test-5 mnt]$time tar jcf isj-wiki.tar.bz2 isj-wiki/
  2. real 0m8.138s
  3. user 0m7.754s
  4. sys 0m0.429s

對應解壓命令為:

  1. tar jxf isj-wiki.tar.bz2

4,tar.xz格式。

注意這種格式需要安裝xz包。

  1. yum -y install xz

打包。

  1. [root@isj-test-5 mnt]$time tar Jcf isj-wiki.tar.xz isj-wiki/
  2. real 0m29.741s
  3. user 0m26.689s
  4. sys 0m3.192s

對應解壓命令為:

  1. tar Jxf isj-wiki.tar.xz

 

5,總結。

從時間上已經可以看出,越來越長排列的。

接下來看重點,看看壓縮之后的包大小:

  1. [root@isj-test-5 mnt]$du -sh *
  2. 66M isj-wiki
  3. 64M isj-wiki.tar
  4. 24M isj-wiki.tar.bz2
  5. 26M isj-wiki.tar.gz
  6. 20M isj-wiki.tar.xz

可以看到大小排序與用時排序是成反比的,壓縮比越高的,耗時也越久。

最后,綜合各方考慮,決定選用bz2這種格式來作為御用的壓縮方式。

6,其他技巧

有時候在打包壓縮某個目錄的時候,某些諸如日志類的是不需要的,因此可以使用如下命令,對不需要的目錄進行排除。

  1. tar jcf tomcat.tar.bz2 --exclude=tomcat/logs --exclude=tomcat/libs --exclude=tomcat/xiaoshan.txt tomcat

注意:在指定排除目錄的時候,目錄的話結尾不能帶/否則將會排除失敗。比如--exclude=tomcat/logs如果寫成--exclude=tomcat/logs/,則打包的時候還是會打進去。

轉載http://www.eryajf.net/2836.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM