银河麒麟系统中需用tar+split命令分卷压缩超限大文件,先验证工具安装,再通过管道流式处理生成数字后缀分卷,最后cat合并解压。

在银河麒麟操作系统中,当需要将超过网盘或U盘单文件限制(如4GB)的大文件分拆传输时,必须通过终端命令完成分卷压缩,否则无法绕过存储介质的单文件大小上限。
确认系统已安装必要工具
执行 tar --version 和 split --version,确保输出包含版本号;若提示 command not found,则运行 sudo apt update && sudo apt install coreutils tar 安装基础工具。银河麒麟V10 SP1及以后版本默认已预装,但部分精简版可能缺失 split。
用 tar + split 实现分卷压缩
这是银河麒麟下最稳定、兼容性最强的分卷方案,适用于任意大小目录或单文件。
第一步:进入待压缩文件所在目录,例如:cd /home/user/data
第二步:执行打包压缩并实时分卷,以每卷 900MB 为例:tar -czvf - large_folder/ | split -b 900M - large_folder.tar.gz.
这一步不生成中间大文件,直接流式处理——【避免磁盘空间不足】。若先生成完整 .tar.gz 再 split,10GB 文件会临时占用双倍空间;而管道方式仅需略高于单卷大小的空闲空间。
第三步:查看生成的分卷文件:ls -l large_folder.tar.gz.*,应看到类似 large_folder.tar.gz.aa、large_folder.tar.gz.ab 的序列文件。
使用数字后缀提升可读性
字母后缀(aa/ab/ac)在分卷数超过52个时会混乱,改用数字更稳妥,尤其适合超大文件(如30GB以上)。
方法一:用 -d 启用数字后缀:tar -czvf - /var/log | split -d -b 1G - logs_backup.tar.gz. → 生成 logs_backup.tar.gz.00、logs_backup.tar.gz.01 等。
方法二:控制位数为3位(适配千级分卷):split -a 3 -d -b 500M - backup.tar.gz. < /dev/stdin,但需配合 tar 输出重定向,实际推荐直接用上一步的管道写法。
验证分卷完整性
执行 cat large_folder.tar.gz.* | tar -tz | head -n 5,能列出压缩包内前5个文件路径即表示分卷未损坏且顺序正确。若报错 “gzip: stdin: not in gzip format”,说明分卷文件名被手动重命名导致 cat 合并顺序错乱——【必须保持原始生成的字母或数字顺序】。
解压接收端的操作
将所有分卷文件上传至目标机器同一目录后,执行:cat large_folder.tar.gz.* | tar -xzv -C /target/path/。该命令跳过写入合并后的完整压缩包,直接解压到指定目录,节省磁盘空间并避免二次IO开销。

















