您的位置:首页 > 运维架构 > Linux

Linux鸟哥私房菜学习笔记_第九章档案与文件系统的压缩与打包

2013-11-22 20:06 519 查看
Linux常见压缩文件扩展名:*.tar,*.tar.gz,*.tgz,*.gz,*.Z,*.bz2,*.zip

.Z: compress程序压缩的档案

.gz: gzip程序压缩的档案

.tar: bzip2程序压缩的档案

.tar.gz: tar程序打包的档案,其中并且经过gzip的压缩

.tar.bz2: tar程序打包的档案,其中并且经过bzip2的压缩

compress -v hello 压缩档案hello

compress -c hello > hello.back.Z 压缩档案为hello.back.Z作为备份

-r:可以连同目录下的档案也同时给与压缩

-c:将压缩数据输出成为standard output

-v:可以显示出亚手档案信息以及压缩过程的一些档名变化

uncompress hello.Z

注意:compress已经很少被使用了,已经过时,因为该程序无法解开*.gz档案

gzip [-cdtv#] 档名:压缩档案

zcat 档名.gz:读取档案内容

-c:将压缩的数据输出到屏幕上,可透过数据流重导向来处理

-d:解压缩的参数

-t:可以用来检验一个压缩文件的一致性,看看档案有无错误

-v:可以显示出原档案/压缩文件的压缩比等信息

-#:压缩等级,-1最快,但是压缩比最差,-9最慢,但是压缩比最好!预设时-6

gzip -vc hello >hello.gz 压缩档案并显示压缩比等信息

zcat hello.gz 读取hello.gz中的内容

gzip -d hello.gz 解压缩hello.gz //gzip -d等同于gunzip

gzip -9 -v hello 以最好的压缩比压缩档案

gzip -d hello.Z 解压缩*.Z的文件

bzip2[-cdkzv#] 档名

bzcat 档名.bz2

-c:将压缩的过程产生的数据输出到屏幕上

-d:解压缩参数

-k:保留源文件,而不会删除原始的档案哦

-z:压缩的参数

-v:可以显示出原档案/压缩文件案的压缩比等信息

-#:与gzip同样的,都是在计算压缩比的参数,-9最佳,-1最快

bzip2 hello 压缩档案

bzip2 -d hello.bz2 解压缩档案//bzip -d等同于bunzip

bzip2 -cv hello > hello.bz2 压缩档案

bzcat hello.bz2 读取压缩档案

bzip2 -9cv hello > hi.bz2 压缩档案

bzip2 -kv hello 压缩档案。不会删除原始文件

打包指令:tar

compress、gzip、bzip2主要针对档案进行压缩

tar [-j|-z] [cv] [-f 建立的档名] filename... :打包与压缩

tar [-j|-z] [tv] [-f 建立的档名] :查看档名

tar [-j|-z] [xv] [-f 建立的档名] [-C 目录] :解压缩

-c:建立打包档案

-t:查看打包档案的内容含有哪些档名

-x:解打包或解压缩

-j:透过bzip2的支持进行压缩/解压缩,档名最好为*.tar.bz2

-z:透过gzip的支持进行压缩/解压缩,档名最好为*.tar.gz

-v:在压缩/解压缩的过程中,将正在助理的文件名显示出来

-f filename:-f后面要立刻接被处理的档名

-p:保留原本档案的权限与属性

-C 目录:解压缩参数,解压到特定目录

注意:-c,-t,-x不可同时出现在一串指令列中

tar -jcv -f test.tar.bz2 test/ hello 将test目录和hello档案打包压缩

tar -zcv -f hello.tar.gz test/ hello 同上

tar -jpcvf test.tar.bz2 test/ 打包压缩档案,并保留档案原本属性

tar -jtvf test.tar.bz2 查看档案内容

tar -jxv -f test.tar.bz2 解压缩档案到当前目录

tar -jxvf test.tar.bz2 -C me/ 解压缩档案到特定目录me/

tar -jtvf test.tar.bz2 | grep "test" 查看压缩包中是否包含特定档案

tar -jxvf test.tar.bz2 test/test 解压缩特定档案

tar -jcvf me/test.tar.bz2 --exclude=test/*.apk test/ 打包压缩目录,不包括test/下所有apk文件

tar -jcvf me/newer.tar.bz2 --newer-mtime="2013/11/13" test/ 打包档案,时间比11.13新

tar -cvf - ../test/ | tar -xvf - 边打包../test/目录,边解压到当前目录

zip:档案压缩

zip -r test.zip test/ 将test目录压缩成test.zip

zipinfo test.zip 查看test.zip中的内容

zipinfo test.zip | grep "test" 查看test.zip中包含test的档案

zip -d test.zip test/hello 删除zip包中的hello档案

zip -g test.zip test/hello 添加hello档案到zip包中

unzip test.zip 解压到当前目录

unzip mnt/test.zip -d me/ 解压档案到制定目录me/

dump:档案备份

dump [-Suvj] [-level] [-f 备份档] 待备份资料

-S:仅列出后面的待备份数据需要多少磁盘空间才能够备份完毕

-u:将这次dump的时间记录到 /etc/dumpdates 档案中

-v:将dump的档案过程显示出来

-j:加入bzip2的支持!将数据进行压缩,默认bzip2压缩等级为 2

-level:等级,从-0 ~ -9 共十个等级

-f:有点类似 tar,后面接产生的档案,亦可接例如 /dev/st0 装置文件名等

-W:列出在 /etc/fstab 里面的具有dump设定的partition 是否有备份过

sudo dump -S ~/study/ 计算备份~/study目录需要多少容量

sudo dump -vj -f ~/dump/study.dump.bz2 ~/study/ 将study目录备份到dump目录下

sudo dump -0uvj -f /root/boot.dump /boot 完整备份/boot并记录为/root/boot.dump

restore -t [-f dumpfile] [-h] :用来查看dump档

restore -C [-f dumpfile] [-D 挂载点] :比较dump和实际档案

restore -i [-f dumpfile] :进入互动模式

restore -r [-f dumpfile] :还原整个文件系统

-t :此模式用在查看dump起来的备份文件中含有什么重要数据,类似tar -t功能

-C :此模式可以将dump内数据拿出来跟实际的文件系统作比较,最终会列出在dump档案内有记录的,且目前文件系统不一样的档案

-i :进入互动模式,可以仅还原部分档案,用在dump目录时的还原

-r :将整个文件系统还原的一种模式,用在还原针对文件系统的dump备份

-h :查看完整备份数据中的inode与文件系统label等信息

-f :后面接你要处理的那个dump档案

-D :与-C进行搭配,可以查出后面接的挂载点与dump内有不同的档案

注意:各种模式无法混用,不可写-tC

restore -t -f ~/dump/study.dump.bz2 查看dump档

restore -C -f ~/dump/study.dump.bz2 查看文件系统与备份文件之间的差异

restore -i -f ~/dump/study.dump.bz2 进入restore互动模式

mkisofs:建立映像档

mkisofs [-o 映像档][-rv][-m file]待备份文件

-o:后接要产生的那个映像档名

-r:透过Rock Ridge产生支持Unix/Linux的档案数据,可记录较多的信息

-v:显示建置ISO档案的过程

-m:排除档案,后接不备份到映像档中的档案

-V vol:建立Volume

mkisofs -r -v -o me/test.img test/ 建立映像档

sudo mount -o loop me/test.img mnt/ 将建立的映像档挂载到mnt目录
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: