今天我试着把Ubuntu 19.10升级到20.04。重新启动后,它无法引导到内核5.4.0-29-泛型,甚至在恢复模式。我不能再启动到5.3.0-51通用,但我可以启动到它的恢复模式。
这台机器有一个线程3990X,当我第一次安装它的时候,我在19.10个月前很难启动它。我忘记了我必须采取什么措施来使它工作,但我记得它涉及一些引导参数(I 想 mce=off),而新的GRUB条目具有相同的参数。
我有一个加密的磁盘。在恢复模式下启动5.3.0-51泛型时,它会暂停以提示我找到解密我的磁盘的密钥,但是当引导到5.4.0-29-泛型时就不会了。下面是显示在我屏幕上的最后一条消息(“屏幕截图”这里):
mce: Unable to init MCE device (rc: -5)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
CPU: 2 PID: 1 Comm: swapper/0 Not tainted 5.4.0-29-generic #33-Ubuntu
Hardware name: Micro-Star International Co., Ltd. MS-7C59/Creator TRX40 (MS-7C59), BIOS 1.20 01/07/2020发布于 2020-05-16 14:53:40
我在其他地方得到了这个提示:
内核恐慌的原因是它不能挂载根fs。它不能挂载根fs,因为它是加密的。如果没有initrd它就不能解密。修复方法是:为5.4.0的grub配置添加initrd行。
我在5.4.0-29泛型的GRUB条目中添加了这一行,基于5.3.0-51泛型的GRUB条目:
initrd /initrd.img-5.4.0-29-generic我收到了文件丢失的错误消息。我在恢复模式下引导到5.3.0-51-泛型,然后进入根shell。我检查了/boot,initrd.img-5.3.0-51-generic和initrd.img-5.3.0-46-generic都在那里,但initrd.img-5.4.0-29-generic没有,我搜索并找到了这个问题。在此基础上,我尝试了apt reinstall -f linux-image-5.4.0-29-generic,但是它很快失败了,出现了错误消息(我忘记了),并告诉我运行dpkg --configure -a。那是我做的。它运行在一堆包中,停下来进行手动干预,只让我决定是否保留对/etc/pulse/default.pa所做的更改。我猜Ubuntu不知道如何处理升级到20.04时所需的手动干预,只是在重新启动之前,包处于崩溃状态。无论如何,在我作出决定之后,我继续说,我看到了这些台词:
Processing triggers for linux-image-5.4.0-29-generic (5.4.0-29.33) ...
/etc/kernel/postinst.d/dkms:
* dkms: running auto installation service for kernel 5.4.0-29-generic
...done.
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-5.4.0-29-generic在它完成后,我退出了外壳,恢复了正常的引导,并且成功了!然后我重新启动,引导到5.4.0-29通用内核,然后它再次工作。
https://askubuntu.com/questions/1240114
复制相似问题