Linux备份与压缩策略

Linux备份与压缩策略

为什么学习这个?

由于现在的应用程序以及文件普遍越来越大,为了节省空间、减少网络传输代价,在备份过程中一般采用压缩技术。

1      打包程序tar

tar命令本身只进行打包不进行压缩,主要功能是将多个文件或目录打包在一个文件里,以便于传输和保存。

为了减少备份文件的大小,节省存储空间,tar命令经常和许多压缩选项配合使用。格式如:

tar 【选项】备份后的文件名.tar 备份的文件或目录

一些基本选项意义如下:

l  c或-c:创建新的备份文件

l  v或-v:verbose模式,即显示命令执行时的信息

l  f或-f:指定压缩的文件格式

l  x或-x:对文件进行恢复

l  Z或-Z:指定压缩为.Z格式

l  z或-z:指定压缩为.z格式

l  t或-t:查询包中内容

tar命令选项很多,上面仅为常用选项,各个选项可配合使用

1.1      打包和解包的常规操作

例如对当前目录下的所有文件和目录进行打包,生成IDEinfo.tar备份文件:

对文件进行恢复,将c改为x即可

注:在打包的时候如果使用了绝对路径,恢复时tar会自动将文件或目录恢复到原来的路径下,如果路径不存在就重新创建。为了避免这种情况,打包时建议先进入子目录,然后再执行tar命令。

1.2      查看tar包中的内容

建立软链接

1.3      打包链接文件

tar命令只打包链接文件,不会将源文件打包。

需要使用选项“-h”打包源文件。

1.4      向包中添加新文件

对于打包后的文件,如果要在包中新增文件,只需用“-r”选项,无需重打包全部文件。如:在上例打包文件zhangjiali.tar中新增SAU_zhangjiaji.txt文件。

1.5      生成.tar.gz压缩包

Linux中除了用gzip实现压缩,生成.gz后缀名的压缩包。tar配合“z”选项也可以。

使用“ztf”选项可以查看压缩包中的内容

使用“zxvf”选项可以对后缀名“.tar.gz”的压缩包解压缩

2      压缩程序gzipgunzip

gzip具有高效压缩率,但只能逐个生成压缩文件,无法将多个文件压缩并打包成一个文件,所以gzip通常和tar配合使用。即先用tar将多个文件打包,然后用gzip进行压缩,通常生成“.tar.gz”或“.tgz”为后缀名的文件。gzip命令格式如下:

gzip -cdfhlLnNrtvV19】【-S suffix】【文件名

gzip选项:

l  -c(stdout):输出到标准输出设备上,原文件内容不变

l  -d(decompress):解压缩

l  -f(force):对输出文件强制写覆盖并对链接文件进行压缩

l  -h(help):显示帮助信息

l  -l(list):列出压缩包内容

l  -L(license):显示软件许可证

l  -n(no-name):不保存或恢复原文件的文件名和时间戳

l  -N(name):保存或恢复原文件的文件名和时间戳

l  -q(quiet):禁止警告

l  -r(recursive):对目录进行递归操作

l  -S .suf(suffix .suf):使用自定义的压缩文件后缀名

l  -t(test):检测压缩包的完整性

l  -v(verbose):verbose模式

l  -V(version):显示版本号

l  -1(fast):快速压缩

l  -9(best):最佳压缩(压缩率最高)

使用gzip命令可以直接对文件进行压缩,但不可以对目录进行压缩。压缩后的文件以原文件名为主文件名,以“.gz”为后缀名,同时系统会自动删除原文件

2.1      常规压缩与解压缩

对一个文件进行压缩

同时对多个文件进行压缩

对一个文件进行解压缩

同时对多个文件进行解压缩

使用选项“-d”,也可以让gzip命令完成对文件的解压缩

2.2      查看.gz压缩包中的内容

以下四项表示:已压缩字节、未压缩字节、压缩率、压缩前文件名

2.3      自定义压缩包后缀名

使用gzip压缩文件后,默认生成的后缀名为“.gz”,但配合“-S”,可自定义压缩文件的后缀名。比如自定义后缀为“.jv

在解压缩时也必须说明自定义后的后缀名

也可以使用gzip命令解压缩

3      压缩程序zipunzip

zip格式的文件在windows系统中也被广泛使用,windows中著名的winzip程序就是专门用来处理zip文件的工具。zip命令格式如下:

zip -选项】【-t mmddyyyy】【-n 后缀列表】【zip文件】【源文件

如果没有指定源文件和zip文件,系统默认对标准输入进行压缩,并从标准输出中到处压缩文件。zip文件如果没有指定后缀名,则默认后缀名为“zip”。zip的选项说明如下:

l  -f:仅对变化的文件进行更新

l  -u:只有文件被改动或有新文件时才进行升级

l  -d:删除zip文件中的条目

l  -r:子目录递归

l  -l(or 1):将LF转换为CR LF

l  -9:最佳压缩(压缩率最高)

l  -q:静默模式

l  -v:verbose模式,打印版本信息

l  -z:给zip压缩文件加注释

l  -@:从标准输入读入文件名

l  -x:不包括列出的文件

l  -i:包括列出的文件

l  -j:不包括子目录

l  -A:调整为自开展开的exe文件

l  -T:检测文件的完整性

l  -y:对于链接文件仅保存符号链接

l  -e:加密

l  -k:用8.3格式转换zip文件中的文件名,并且文件名改为大写

l  -m:创建压缩文件后,自动删除源文件

l  -n:直接放入压缩包,不进行压缩

3.1      常规压缩操作

指定文件进行压缩

在对目录进行压缩时,如果目录中存在子目录,则zip默认只将目录名放入压缩包,并不进入子目录进行压缩

3.2      连同子目录一并压缩

对当前目录中的所有文件、子目录及子目录下的文件一并进行压缩,需要使用选项“-r

3.3      对指定目录中的文件进行压缩

对指定目录中的文件进行压缩,忽略子目录,需要使用选项“-j

3.4      生成兼容压缩包

有时zip压缩文件需要在其他平台上解压缩,为了保持和其他平台的兼容性,最好使用比较通用的8.3命名格式来重新对文件命名,然后在进行压缩。使用选项“-k”。该选项除了将文件名改为8.3格式外,还会将文件名调整为大写。该选项只影响压缩包内的文件名,对源文件名不做更改。

3.5      只打包不压缩

对于JPGGIFRMVBMPEG等格式的媒体文件,由于自身已经采用了一定的压缩技术,如果再用zip进行压缩,效果不大且浪费时间。可使用选项“-n”对该类文件只打包不压缩。文件间用冒号分隔。

3.6      从标准输入读入压缩文件名

选项“-@”允许从标准输入设备读入文件名。如果需要压缩的文件很多,无法在一行列出所有文件名,可以使用该选项,输入完毕按ctrl+d组合键提交文件名

3.7      排除无需压缩的文件

如果某一目录中需要压缩的文件数目占绝大多数,在选择源文件时使用选项“-x”,将个别不需要压缩的文件排除即可。

3.8      对日期进行压缩

如果需要压缩某一日期之后的文件,可以使用选项“-t”对日期进行设定。日期格式mmddyy

例如:对2013427日之后创建的文件进行压缩,可以使用命令:

zip –t 042713 file.zip *

3.9      最佳压缩

选项“-9”表示最佳压缩,即压缩率高。zip的压缩率共分9个等级,其中1级最低,即压缩速率快,但节省空间少;9级最高,压缩速率慢,但可节省较多存储空间。zip默认的压缩等级为6.

3.10   压缩符号链接

对于符号链接文件,zip在压缩前会自动寻找该链接指向的源文件,并对原文件进行压缩,压缩后连接关系不在存在。

如果希望对链接文件自身进行压缩,解压后仍然保持其链接属性,可以使用选项“-y

3.11   删除源文件

使用选项“-m”,可在生成压缩文件后,自动删除源文件,以进一步节省空间。

4      使用unzip进行解压缩

unzip的命令格式如下:

unzip 【选项】 zip文件

l  -Z:以zipinfo格式显示压缩文件内的信息,包括文件数目、已压缩和未压缩字节数、压缩比等

l  -l:以简略格式输出压缩文件的基本信息,包括文件名、修改日期时间及未压缩文件的大小等。如果存在注释,也一并显示

l  -L:如果压缩文件是从不区分大小写的文件系统中创建,例如MS-DOS操作系统,则将文件名全部改为小写,并添加前最“^”

l  -t:通过CRC校验对zip压缩包进行检测

l  -x:用于排除压缩包中的特定文件

4.1      常见解压缩操作

unzip file.zip

4.2      排除无需解压缩的文件

unzip file.zip –x file0

4.3      zipinfo格式查看压缩包的内容

使用“-Z”选项查看压缩包内容

unzip –Z file.zip

4.4      以简略格式查看压缩包内容

使用“-l”选项查看

unzip –l file.zip

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值