我从 Linux Mint 21.1 升级到 21.2 后,最新的 initrd 停止工作。较旧的工作正常。重新生成 initrd 没有帮助。在使用最新的 initrd 启动时,错误表明我解密的 Rootdrive 的 UUID 不存在,因此我猜测 crypttab 没有被使用。我检查了 crypttab 没有改变。
答案1
如果您的根文件系统是加密的,那么在现代 Debian/Ubuntu/Mint 中您不仅需要该cryptsetup
软件包,还需要该cryptsetup-initramfs
软件包。
升级后,您/var/cache/apt/archives/
很可能已经装满了下载的软件包,因此在重新生成 initrd 时,系统可能会出现磁盘空间不足的情况。
这通常会导致 initrd 创建失败,并可能导致创建部分 initrd 文件。尝试使用不完整的 initrd 文件启动很容易导致您看到的故障。
首先,运行ls -l /boot
并查看 initrd 文件的大小。如果新内核的 initrd 明显小于旧内核的 initrd,则它可能缺少某些部分。
在这种情况下,请尝试sudo apt clean all
通过清理软件包缓存来腾出一些空间(如果磁盘空间紧张,则在重大更新后总是一个好主意),然后确保软件包cryptsetup-initramfs
已安装并且是最新的。然后再次尝试为新内核重新生成 initrd。