![update-initramfs 非常慢](https://linux22.com/image/1070736/update-initramfs%20%E9%9D%9E%E5%B8%B8%E6%85%A2.png)
我以前sudo apt update && sudo apt upgrade
经常很高兴;然而,就在今天,我更新时发现更新在更新内核时挂起了很长时间,特别是在 update-initramfs 时。
速度明显变慢。以前安装最多只需一分钟。现在可能需要一个小时甚至更长时间。这可能是什么原因造成的?
答案1
我遇到了这个问题,而且启动也非常慢(在一台较旧的机器上)。这与压缩和方法从 gzip 更改为 bz 有关。
我通过在 /etc/initramfs-tools/initramfs.conf 中使用 COMPRESS="cat" 完全消除了压缩,现在构建和启动都超级快。(文件名和目录可能因发行版和发行版版本而异。)
这会填满我的 /boot 目录的大部分空间,但无论如何它还没有接近容量。
答案2
我也检查了这个问题。在 Ubuntu 21.10 中,默认/etc/initramfs-tools/initramfs.conf
情况COMPRESS=zstd
下,这是一个不错的选择,但不幸的是它不允许我们配置压缩级别。级别是硬编码在/usr/sbin/mkinitramfs
:
case "${compress}" in
#--snip--
zstd) compress="zstd -q -19 -T0" ;;
我将 -19 改为 -6,让它在更合理的时间内运行,update-initramfs -u -k all
安装了 2 个内核版本后运行时间约为 43 秒。更改之前需要 150 秒。因此,initrd-images 从大约 60 MB 增长到 80 MB,这对我来说是一个很好的折衷方案。
请注意,这sudo apt autoremove -y
是对升级命令的一个很好的补充。它删除了旧的不需要的内核,因此它不会花时间处理它们。