将 initramfs 中的 COMPRESSVALUE 设置为默认值以外的值会产生什么影响

将 initramfs 中的 COMPRESSVALUE 设置为默认值以外的值会产生什么影响

配置时initramfs(至少在 Ubuntu 和 Debian 上),可以在各种压缩方法之间进行选择,并且 a 的COMPRESSVALUE含义也有所不同(某些为 0-9,其他为 1-9,而 0 到 19 zstd)。至少在 Ubuntu 中,注释掉的行表示默认值为 1。当您设置更高的值时会发生什么?它会尝试压缩更多,还是默认值 1 是压缩方面的最佳值?

答案1

经过一些测试后,似乎一般规则是数字越大,压缩程度越高,压缩所需的时间越长,并且收益递减。对于COMPRESS=xz,测试机生成 52MB 图像的时间略多于 3 分钟。当值为 1 时,生成 62MB 的图像大约需要 30 秒。值为 5 时,大约需要 1 分钟,initrd 映像大小为 54MB。

启动时的性能可能不会反映这些时间(用于压缩),因为启动过程的工作方向相反。这是因为引导加载程序可以自由地利用 SIMD 扩展、加速技巧以及平台上任何支持的硬件,如果在运行的 Linux 内核中使用,可能会产生更高的惩罚。

相关内容