pixz:开源的并行 xz 压缩器,大归档随机访问更轻松
什么是 pixz
pixz(读作 pixie)是一款并行的、带索引的 xz 压缩工具。它在标准 xz 压缩格式的基础上,解决了两个长期存在的问题:一是传统 xz 工具仅使用单线程压缩,而如今大多数设备都是多核的;二是传统 xz 生成的是一个大块压缩数据,无法对原始数据做随机访问。pixz 用分块与并行的方式同时解决了这两点。截至2026年9月,其最新稳定版本为 1.0.7 系列,采用 BSD 许可证开源发布,源码可在其官方代码仓库中获取。
分块与索引
pixz 在压缩时会把数据切成多个较小的块,并自动为压缩包建立索引。这意味着用户无需解压整个文件,就能快速列出压缩包内容,或抽取其中的单个文件。对于体积庞大的归档文件,这种随机访问能力尤为实用——你可以直接取出某个目录或文件,而不必等待整包解压完成,也无需为查看一个条目而付出全盘解压的时间与磁盘成本。
并行能力
pixz 默认会使用机器上所有可用的 CPU 核心进行压缩与解压,而传统 xz 工具默认只用一个核心。它还支持并行解压,这是标准 xz 不具备的能力。在拥有多核处理器的机器上,处理大文件时速度优势明显,能更充分地利用硬件资源,把原本要等待许久的任务缩短到可接受的范围。
与 tar 的协作
pixz 最常见的用法是压缩与索引 tar 归档。它会在压缩 tar 包的同时自动建立索引,随后可以用一条命令极快地列出包内文件清单,或从中抽取指定的单个文件。这种"压缩即可索引"的特性,让大型归档的查看与取用变得轻松很多,也特别适合需要在归档里反复定位内容的场景。
安装与使用
作为一款命令行工具,pixz 已进入多个主流系统的软件仓库,可通过各平台的包管理器直接安装,也支持从源码编译。它的命令行参数在保持与 xz 兼容思路的同时做了一些简化:默认即为压缩,加 -d 表示解压,并提供 -i 与 -o 显式指定输入输出文件。和许多压缩工具一样,它也允许通过数字参数在压缩速度与压缩率之间取舍,方便在不同任务中灵活平衡。
适用场景
pixz 适合需要频繁压缩或分发大型归档的场景,例如持续集成中打包构建产物、备份系统对大目录做压缩归档,以及需要从一个超大压缩包里反复抽取少量文件的场合。由于它产出的是标准 xz 格式,解压端只要支持 xz 即可,兼容性良好,不会因为使用了并行压缩而牺牲通用性,是开发者与运维人员在命令行下处理归档的实用补充。