NOTE
Linux 文件压缩、打包与备份
整理 Linux 常见压缩格式、tar 打包、备份与恢复命令用法。
常见压缩文件扩展名与对应工具
| 扩展名 | 说明 |
|---|---|
*.Z | compress 压缩格式 |
*.zip | zip 压缩格式 |
*.gz | gzip 压缩格式 |
*.bz2 | bzip2 压缩格式 |
*.xz | xz 压缩格式 |
*.tar | tar 打包(未压缩) |
*.tar.gz | tar 打包 + gzip 压缩 |
*.tar.bz2 | tar 打包 + bzip2 压缩 |
*.tar.xz | tar 打包 + xz 压缩 |
常用工具详解
tar - 打包工具
简介:Linux 中的压缩工具通常不能直接压缩目录,需要先用 tar 将目录打包为单个文件后再进行压缩。
基本用法
# 打包
tar [-z|-j|-J] [cv] [-f 打包文件名] 要打包的文件或目录
# 查看打包文件内容
tar [-z|-j|-J] [tv] [-f 打包文件名]
# 解包
tar [-z|-j|-J] [xv] [-f 打包文件名] [-C 目标目录] [要单独解压的文件名]
参数说明
| 参数 | 说明 |
|---|---|
| -z | 使用 gzip 压缩/解压缩 |
| -j | 使用 bzip2 压缩/解压缩 |
| -J | 使用 xz 压缩/解压缩 |
| -c | 创建打包文件 |
| -t | 查看打包文件中的文件列表 |
| -x | 解包 |
| -v | 显示处理过程 |
| -f | 指定打包文件名 |
| -C | 指定解包目标目录 |
| -p | 保留文件原有权限属性 |
| -P | 保留绝对路径(谨慎使用) |
高级用法
排除特定文件打包:
tar -cvf 打包文件名 --exclude=要排除的路径 要打包的目录
仅打包指定时间后的文件:
tar -cvf 打包文件名 --newer-mtime="YYYY/MM/DD" 要打包的目录
gzip - 压缩工具
广泛使用的压缩工具,可解压 compress、zip 和 gzip 格式的文件,生成 .gz 扩展名的压缩文件。
基本用法
gzip [-cdtv#] 文件名
参数说明
| 参数 | 说明 |
|---|---|
| -c | 将压缩数据输出到标准输出 |
| -d | 解压缩 |
| -t | 测试压缩文件的完整性 |
| -v | 显示压缩比等信息 |
| -# | 压缩等级(1-9,1最快压缩比最低,9最慢压缩比最高,默认为6) |
注意:使用 gzip 压缩后,原始文件会被删除。
bzip2 - 压缩工具
gzip 的增强版,提供更好的压缩比,生成 .bz2 扩展名的压缩文件。
基本用法
bzip2 [-cdkzv#] 文件名
参数说明
| 参数 | 说明 |
|---|---|
| -c | 将压缩数据输出到标准输出 |
| -d | 解压缩 |
| -k | 保留原始文件 |
| -z | 压缩(默认行为,可省略) |
| -v | 显示压缩比等信息 |
| -# | 压缩等级(1-9,1最快压缩比最低,9最慢压缩比最高,默认为6) |
xz - 压缩工具
提供更高压缩比的压缩工具,生成 .xz 扩展名的压缩文件。
基本用法
xz [-dtlkc#] 文件名
参数说明
| 参数 | 说明 |
|---|---|
| -d | 解压缩 |
| -t | 测试压缩文件的完整性 |
| -l | 显示压缩文件的相关信息 |
| -k | 保留原始文件 |
| -c | 将压缩数据输出到标准输出 |
| -# | 压缩等级(1-9,1最快压缩比最低,9最慢压缩比最高,默认为6) |
系统备份与恢复工具
xfsdump - XFS 文件系统备份工具
专为 XFS 文件系统设计的备份工具,支持增量备份等功能。
安装
yum install xfsdump xfsprogs -y
基本用法
# 执行备份
xfsdump [-L 会话标签] [-M 媒体标签] [-l 备份级别] [-f 备份文件] 要备份的路径
# 查看备份信息
xfsdump -I
参数说明
| 参数 | 说明 |
|---|---|
| -L | 设置会话的简要描述 |
| -M | 设置媒体的简要描述 |
| -l | 指定备份级别(0-9,0为完全备份,1-9为增量备份) |
| -f | 指定备份文件名 |
| -I | 查看 /var/lib/xfsdump/inventory 中的备份状态 |
重要提示:xfsdump 只能备份完整的文件系统,不能备份单个目录。可使用
df -h /path确认目录是否为独立文件系统。
xfsrestore - XFS 文件系统恢复工具
与 xfsdump 配套使用的恢复工具。
基本用法
# 从完整备份恢复
xfsrestore [-f 备份文件] [-L 会话标签] [-s 特定目录] 恢复目标目录
# 增量恢复
xfsrestore [-f 备份文件] -r 恢复目标目录
# 交互式恢复
xfsrestore [-f 备份文件] -i 恢复目标目录
参数说明
| 参数 | 说明 |
|---|---|
| -f | 指定备份文件 |
| -L | 指定会话标签名称 |
| -s | 仅恢复指定目录 |
| -r | 执行增量恢复 |
| -i | 进入交互式恢复模式 |