Linux私房菜:打包、压缩和备份
本文内容精简、整理、摘抄、有感于《鸟哥的Linux私房菜》第八章 • 文件与文件系统的压缩、打包和备份。
压缩
目前常见的Linux压缩命令包括有gzip
、bzip2
和最新的xz
,下表是一些常见的压缩文件扩展名及对应指令关系:
扩展名 | 指令 | 说明 |
---|---|---|
*.Z | compress |
已经不流行,gzip 可以代替 |
*.zip | zip |
window下常见的压缩格式 |
*.gz | gzip |
较快较为常见的一种压缩格式 |
*.bz2 | bzip2 |
压缩率比gzip要好的压缩格式 |
*.xz | xz |
压缩率比gzip/bzip2都要高的压缩方式 |
如果是经过打包(tar
)的压缩文件,那常见的对应关系大多如下:
扩展名 | 说明 |
---|---|
*.tar | tar指令打包,未压缩过 |
*.tar.gz | tar指令打包,用gzip压缩过 |
*.tar.bz2 | tar指令打包,用bzip2压缩过 |
*.tar.xz | tar指令打包,用xz压缩过 |
以下是上述几种压缩命令的常见用法:
-
gzip [-cdv#] 档名
,压缩或解压缩,支持操作旧式的compress
指令处理的*.Z
压缩文档-
c
将输出流重定向,可自定义压缩文档名称 -
d
解压缩 -
v
显示压缩比 -
#
取值范围介于1-9,1最快压缩率最低,9最慢但压缩比最高,默认是6
-
-
zcat/zmore/zless/zgrep 压缩档
,这几个命令都是用于查看或过滤出gzip格式的压缩档内容 -
bzip2 [-cdkv#] 档名
,提供了比gzip更好的压缩比-
c
将输出流重定向,可自定义压缩文档名称 -
d
解压缩 -
k
保留源文件而不是删除 -
v
显示压缩比 -
#
同gzip,取值范围介于1-9,1最快压缩率最低,9最慢但压缩比最高,默认是6
-
-
bzcat/bzmore/bzless/bzgrep 压缩档
,用于查看或过滤出bz2格式的压缩档内容 -
xz [-cdlk#] 档名
,提供了比gzip/bzip2更好的压缩比-
c
将输出流重定向,可自定义压缩文档名称 -
d
解压缩 -
1
显示压缩文件相关信息 -
k
保留源文件而不是删除 -
#
同gzip,取值范围介于1-9,1最快压缩率最低,9最慢但压缩比最高,默认是6
-
-
xzcat/xzmore/xzless/xzgrep 压缩档
,用于查看或过滤出xz格式的压缩档内容
打包
以上压缩指令仅支持操作单一文件,多个文件则需要配合使用tar
进行打包:
-
tar [-{z|j|J}{c|t|x}vpP] -f 压缩档 待压缩或待解压缩文件 [-C 解压缩目录]
-
zjJ
对应gzip、bzip2和xz三种压缩格式。( PS: 不加该参数时,档名最好取为:*.tar
;如果是-z
,对应为*.tar.gz
;如果是-j
,对应为*.tar.bz2
;如果是-J
,对应为*.tar.xz
) -
ctx
分别对应打包压缩、察看压缩档内容和解压缩这三种功能,不能同时出现 -
v
压缩或解压缩过程中显示正在处理的文件名 -
f
后接已有tar档名或待建立档名 -
C
解压缩时指定的目录位置 -
p
保留备份数据的原权限和属性 -
P
保留根目录绝对路径,解压会还原到该位置 -
--exclude=FILE
压缩但不包含FILE
-
备份
-
XFS文件系统
- 备份:
xfsdump
- 还原:
xfrestroe
- 备份:
-
光盘写入工具
- 建立印象档:
mkisofs
- 光盘刻录工具:
cdrecord
- 建立印象档:
-
其它压缩备份工具
dd
cpio
重点回顾
重点回顾
欢迎关注我的个人公众号:超级码里奥
如果这对您有帮助,欢迎点赞和分享,转载请注明出处