Arch Linux开发人员已经发布 最近通过关于 您打算启用 支持压缩算法 标准 (自2017年4.14月起包含在Linux内核XNUMX中) 在pacman软件包管理器中。
自Arch Linux开发人员以来 进行了不同压缩算法的比较最终,他们选择计划使用zstd代替devtools中的默认压缩算法。 当前的压缩方法是“ xz-cz-”, 它是单线程的,速度很慢,因此团队希望将其替换为更快的算法。
与xz算法相比, 使用zstd将加速数据包压缩和拆包 (由于它使用有限状态熵提供了较大的搜索窗口和快速的熵编码阶段), 保持压缩水平。 结果,切换到zstd将提高软件包的安装速度。
zstd压缩算法可提供更快的压缩和解压缩,同时保持与xz相当的压缩率。 这将加快pacman软件包的安装速度,而不会带来更多麻烦。 他们评论了 在声明中 Arch Linux开发人员
支持使用构成姿势集成的zstd压缩程序包 以后,它将出现在 吃豆人5.2,但安装此类软件包将需要一个zarchd libarchive版本。
Pacman是Linux Arch Linux软件包管理器,它能够解决依赖关系,并自动下载和安装所有必需的软件包。 从理论上讲,用户只需执行一个命令即可完全更新系统。
Pacman对所有软件包都使用tar打包,gzip压缩或xz压缩的文件,每个文件都包含已编译的二进制文件。 软件包通过FTP下载,您还可以使用HTTP和本地文件,具体取决于每个存储库的配置方式。 符合用于从源代码创建软件包的Linux Arch Build System(ABS)。
关于Zstandard
Z标准 (zstd) 旨在提供与DEFLATE算法相当的压缩率, 但速度更快,尤其是对于减压。 可以从5(最快)到22(最低压缩速度,但最佳压缩率)的压缩级别进行调整。
zstd包 包括并行实现 (多线程)压缩和解压缩。 从1.3.2版开始,zstd可以选择实现非常远程的搜索和重复数据删除,类似于rzip或lrzip。
压缩速度可能相差20倍 在最快和最慢的水平之间,甚至更高,而减压始终是快速的, 最快和最慢的水平之间相差不到20%。
Zstd具有最大压缩级别 提供接近lzma的压缩比,lzham和ppmx,并且比lza或bzip2更好。 Zstandard到达了当前的帕累托边界,因为它是 解压缩速度比任何其他可用算法都要快 目前具有相似或更好的压缩率。
字典会对小文件的压缩率产生巨大影响,因此Zstandard算法可以使用用户提供的压缩字典。 它还提供了一种训练模式,能够从一组样本中生成字典。
特别是,可以加载字典来处理大型文件集,并且文件之间具有冗余,但不一定在每个文件(例如日志文件)中都有冗余。
因此, 在开始使用zstd分发压缩软件包之前 在Arch Linux频道中用户必须首先安装libarchive 至少是3.3.3-1版(一年前准备了带有此版本的软件包,因此很可能已经安装了所需的libarchive版本)。
由zstd压缩的软件包将带有扩展名“ .pkg.tar.zst”。