尝试升级到 22.04 时出现以下错误
升级已中止。升级需要磁盘“/boot”上总共 616 M 的可用空间。请在“/boot”上释放至少 144 M 的额外磁盘空间。您可以使用“sudo apt autoremove”删除旧内核,还可以在 /etc/initramfs-tools/initramfs.conf 中设置 COMPRESS=xz 以减小 initramfs 的大小。
我已经完成了所有常见的删除旧内核等操作,但是这个空间量几乎占据了所有的 Ubuntu 默认启动驱动器空间,所以没有多少可用空间可以让它通过。
尺寸要求的大幅增加使我相信这是某种形式的错误。除了解密和调整分区大小之外,我可以在这里尝试什么吗?
Est*_*her 38
这是由于对 initramfs 使用不同的压缩方法而导致的已知问题。新的默认值lz4压缩在启动时解压缩/读取速度更快,但需要大量空间来/boot创建。这意味着分区较小的人/boot将没有足够的空间来生成 initramfs。
解决方法是将压缩算法更改为xz推荐的(或占用更少空间的其他算法)。
为此,请按照错误消息中的说明编辑/etc/initramfs-tools/initramfs.conf并设置。COMPRESS=xz之后,您应该能够升级。
Set*_*own 24
我最终能够通过 Esther 链接的错误报告中的压缩技巧解决这个问题。
该错误表明 initramfs.conf 必须更改为 COMPRESS=xz。然而,仅仅改变配置是没有效果的。需要使用以下命令重建图像:
sudo update-initramfs -u -k all
Run Code Online (Sandbox Code Playgroud)
更改为 COMPRESS=xz 的影响很小,但不足以允许安装在默认大小的引导分区上。设置 COMPRESS=lzma 并重建映像确实允许安装继续。
另外值得注意的是,错误消息显示运行命令“sudo apt autoremove”,但这同样不会自行释放启动空间。多余的内核通常必须像这样去除。