要通过脚本进行备份,必然将会应用到压缩技术,这里简单针对几个常见的格式进行测验,从而得到一种合适的方式。

这里以一个应用目录做例子:

  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

关于打包压缩几种格式(gzip,bzip2,xz)的试验对比的更多相关文章

  1. centos 文档的压缩和打包 gzip,bzip2,xz,zip,unzip,tar,tgz 第九节课

    centos  文档的压缩和打包   gzip,bzip2,xz,zip,unzip,tar,tgz  第九节课 SAS盘可以支持热插拔,看机器 tar.zip.tar -czvf 不会动源文件,gz ...

  2. [CentOS7] gzip, bzip2, xz 压缩与解压缩

    声明:本文主要总结自:鸟哥的Linux私房菜-第八章.檔案與檔案系統的壓縮,打包與備份,如有侵权,请通知博主 gzip命令: 选项参数: -c :将压缩后的数据显示到屏幕上,可以用于重定向: -d : ...

  3. gzip,bzip2,xz压缩工具

    gzip,bzip2,xz压缩工具====================== gzip压缩工具 示例:[root@aminglinux yasuo]# ls1.txt 2.txt 3.txt[roo ...

  4. lesson - 8 课程笔记 tar / gzip /bzip2 / xz /

    作用:为linux的文件和目录创建档案,也可以在档案中改变文件,或者向档案中加入新的文件即用来压缩和解压文件.tar本身不具有压缩功能.他是调用压缩功能实现的  语法:tar[必要参数][选择参数][ ...

  5. Linux之备份(tar)/解压与压缩(gzip,bzip2,xz)【待完善】

    [本博文,待完善] 以data原始文件为例,同tar备份,用xz压缩,实现备份->压缩整个过程的正向过程(生成.tar.xz)与其逆过程(先解压,后还原备份文件) 1.备份(tar) tar - ...

  6. CentOS7 tar打包工具 打包,解包,打包压缩,打包解压缩

    tar命令 選項與參數: -c :建立打包檔案,可搭配 -v 來察看過程中被打包的檔名(filename) -t :察看打包檔案的內容含有哪些檔名,重點在察看『檔名』就是了: -x :解打包或解壓縮的 ...

  7. Linux的压缩命令(tar,gzip,zip)

    打包和压缩.打包是指将一大堆文件或目录变成一个总的文件:压缩则是将一个大的文件通过一些压缩算法变成一个小文件. 这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你 ...

  8. linux下如何打包压缩?解包解压?.tar文件.gz文件

    ===文件打包.压缩 ==打包 tar [root@521478.com]# tar -cvf etc1.tar /etc //c创建 v详细 f打包后文件名 [root@521478.com]# t ...

  9. [拾 得] zip gzip bzip2 & tar 压缩/打包 四大金刚

    坚持知识分享,该文章由Alopex编著, 转载请注明源地址: http://www.cnblogs.com/alopex/    索引: 介绍压缩和打包 gzip bzip2 zip 的基本使用 gz ...

随机推荐

  1. 【SQL】BETWEEN操作符

    BETWEEN 操作符在 WHERE 子句中使用,作用是选取介于两个值之间的数据范围. 操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围.这些值可以是数值.文本或者日期. 注意: ...

  2. QT设计UI:QT模式对话框打开文件

    使用QT模式对话框,并使显示框 为背景色: 方法使用了QCheckBox *native;   #include <QCheckBox> 初始化函数代码: //设置默认打开图像位置 nat ...

  3. c#如何用代码开启cmd指定命令(如:运行一个手机adb shell命令)

    else if (this.Mode == TravelMode.AutoRecodeMode) { DateTime StartDate = DateTime.Now; string args = ...

  4. Hadoop分布式文件系统架构部署

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wgkgood.blog.51cto.com/1192594/1332340 前言 ...

  5. 团体程序设计天梯赛-练习集-L1-045. 宇宙无敌大招呼

    L1-045. 宇宙无敌大招呼 据说所有程序员学习的第一个程序都是在屏幕上输出一句“Hello World”,跟这个世界打个招呼.作为天梯赛中的程序员,你写的程序得高级一点,要能跟任意指定的星球打招呼 ...

  6. mysql与oracle 表字段定义比较

    链接: https://blog.csdn.net/yzsind/article/details/7948226

  7. luogu P4719 【模板】动态 DP 矩阵乘法 + LCT

    方法二:LCT+矩阵乘法 上文中,我们用线段树来维护重链上的各种矩阵转移. 第二种方法是将树链剖分替换为动态树. 我们知道,矩阵乘法 $\begin{bmatrix} F_{u,0} & F_ ...

  8. PAT_A1120#Friend Numbers

    Source: PAT A1120 Friend Numbers (20 分) Description: Two integers are called "friend numbers&qu ...

  9. Redis学习笔记(一)-持久化

    一.RDB持久方式 RDB持久化是把当前进程的数据已快照的形式保存到硬盘的过程. 触发方式: 1.手动触发命令:save和bgsave save:阻塞式,内存较大的实例在执行过程中会造成长时间的阻塞, ...

  10. 配置zabbix及安装agent

    一.配置zabbix http://ip/zabbix/setup.php Next step Next step 输入数据库密码后,Next step Next step 默认用户名是Admin 密 ...