Linux分区压缩主要有以下两种场景及对应方法:
ZIP格式分卷压缩
使用zip -s <分卷大小> -r <压缩包前缀>.zip <目录>
命令,支持跨平台,分卷自动命名(如.z01
、.zip
),解压时只需指定最后一个分卷即可自动合并。
示例:zip -s 100m -r data.zip /data
。
TAR.GZ格式分卷压缩
先用tar -czvf - <目录>
打包,再通过split -b <分卷大小> - <前缀>.tar.gz.
拆分。支持数字后缀(-d -a 2
),适合Linux环境。
示例:tar -czvf - /home | split -b 500m - home_split.tar.gz.
。
LVM逻辑卷压缩
仅适用于LVM管理的逻辑分区,步骤包括:卸载分区→检查文件系统→缩小文件系统(resize2fs
/xfs_growfs
)→缩小逻辑卷(lvreduce
)→重新挂载。
注意:XFS文件系统需先备份数据再重建分区,操作有数据丢失风险。
文件系统原生压缩
部分文件系统(如Btrfs)支持挂载时启用压缩(remount,compress=zstd /dev/sdX /mnt
),但仅对新写入数据生效,无法压缩已有数据。
fsck
),确保数据可用。