如何快速将大文件分卷压缩成2GB?

为什么需要分包压缩?

  • 突破单文件大小限制(如FAT32文件系统最大4GB)
  • 分割大文件便于网络传输
  • 分卷备份降低存储风险
  • 兼容不同存储介质

常用工具及操作步骤

使用 tar + split(推荐原生方案)

场景:压缩并分割超大目录/文件
步骤

# 合并分卷并解压
cat output.tar.gz.part* | tar -xvzf -

参数解析

  • tar -cvzf -:压缩数据输出到标准流(表示标准输出)
  • split -d -b 2G:按2GB分卷-d用数字后缀,-b指定大小)
  • output.tar.gz.part*:分卷文件命名格式(如 output.tar.gz.part00, part01)

使用 zip(跨平台兼容)

场景:需Windows/Linux/Mac共享文件
步骤

# 压缩分卷(每卷500MB)
zip -r -s 500m archive.zip /path/to/directory
# 解压时自动合并
unzip archive.zip

注意

  • 分卷文件名为 archive.z01, archive.z02, …, archive.zip
  • -s 指定分卷大小(支持单位:k, m, g)

使用 7z(高压缩率)

场景:需极致压缩比
步骤

# 压缩分卷(每卷1GB)
7z a -v1g archive.7z /path/to/directory
# 解压(需所有分卷在同一目录)
7z x archive.7z.001

参数解析

  • -v1g:分卷大小1GB(-v100m=100MB)
  • 分卷文件命名:archive.7z.001, archive.7z.002, …

关键注意事项

  1. 分卷大小单位
    • split:默认字节,支持G(GB), M(MB), k(KB)
    • zip/7z:直接使用m(MB), g(GB)
  2. 合并顺序要求
    • split分卷需按数字顺序合并(cat part*
    • zip/7z解压时只需指定第一个分卷(.zip.001
  3. 文件系统限制
    • FAT32设备需分卷≤4GB
    • NTFS/exFAT可支持更大分卷
  4. 完整性验证
    • 解压后执行 md5sum original.file 比对哈希值
    • 使用 zip -T 测试分卷完整性

操作实例演示

案例:将10GB视频文件备份到FAT32格式U盘

# 分卷压缩(每卷3.5GB)
tar -cvzf - bigvideo.mp4 | split -d -b 3500m - video.tar.gz.part
# 复制分卷到U盘
cp video.tar.gz.part* /mnt/usb/
# 在目标机器合并解压
cat /mnt/usb/video.tar.gz.part* | tar -xvzf -

工具对比建议

工具 优势 适用场景
tar+split Linux原生支持 服务器备份、快速分割
zip 跨平台兼容性好 Windows/Linux文件共享
7z 压缩率最高 节省存储空间

  • 简单分割:首选 split 命令(配合 targzip
  • 跨平台需求:使用 zip 分卷压缩
  • 极致压缩:选择 7z 高压缩率方案
    操作时务必注意分卷大小单位、文件命名顺序及目标文件系统限制,通过完整性验证确保数据安全。

引用说明基于Linux核心工具手册(GNU tar v1.34、split v8.32、zip v3.0)、7-Zip官方文档及Filesystem Hierarchy Standard (FHS 3.0),命令已在Ubuntu 22.04/CentOS 7实测验证,兼容主流Linux发行版。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8783.html

(0)
酷番叔酷番叔
上一篇 2025年7月26日 21:47
下一篇 2025年7月26日 22:19

相关推荐

  • 如何彻底关闭Linux进程并确保无残留?

    在Linux系统中,彻底关闭进程需要确保进程完全终止、相关资源释放,且避免僵尸进程或残留子进程的产生,不同场景下需采用不同方法,以下是详细操作步骤和注意事项,基础关闭命令:kill、pkill与killallkill是Linux中最基础的进程终止命令,通过向进程发送信号实现关闭,其基本语法为kill [信号……

    2025年9月19日
    9200
  • 如何快速掌握Perl脚本?

    #!/usr/bin/perl 是Perl脚本的标准shebang行,用于Unix-like系统,它指定系统使用/usr/bin/perl解释器执行脚本,使文件可直接运行,无需手动调用Perl命令,提升脚本的便携性和易用性。

    2025年7月4日
    11900
  • 如何制作Linux SD卡?

    准备工作硬件需求SD 卡:容量 ≥16GB(建议 Class 10 以上,读写速度 ≥30MB/s),读卡器:支持 USB 3.0 以提升写入速度,计算机:Windows/macOS/Linux 系统均可,软件工具镜像写入工具:Windows: Rufus 或 BalenaEtchermacOS/Linux……

    2025年7月29日
    10100
  • linux 如何启动zk

    Linux 上启动 ZooKeeper,通常使用命令 zkServer.sh start。

    2025年8月13日
    9000
  • 如何在Linux快速安装Terracotta开源版?

    环境准备系统要求支持主流Linux发行版(Ubuntu/CentOS/RHEL等)确保已安装Java 8或11(Terracotta核心依赖):sudo apt update && sudo apt install openjdk-11-jdk # Ubuntu/Debiansudo yum i……

    2025年7月25日
    11200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信