我有一个 14.04.3 LTS 系统,在升级到 4.4.0-24 内核(xenial 内核映像包)后无法启动。它有一个 NVME SSD,使用 4.4 系列内核,它似乎看不到 NVME。NVME 在安装时使用默认设置加密。SATA 磁盘是后来添加的,并设置为加密磁盘,使用密钥自动挂载。
事情的经过如下:
在grub中选择4.4内核后显示:
- 正在读取所有物理卷。这可能需要一段时间
- 未找到卷组
- 未找到卷组
几分钟后,它就掉落到一个 busybox shell 中。
从 busybox shell 中,我可以看到 SATA 磁盘存在(/dev/sda
和/dev/sdb
),但没有/dev/nvme
。
查看时/dev/disks/by-uuid/
只发现两个 SATA 磁盘。
我可以解密并安装 SATA 驱动器:
cryptsetup luksOpen /dev/sda1 blorp
mount /dev/mapper/blorp /tmp/blorp
我已确保 UUID/etc/crypttab
正确,并为该内核重新生成了 initramfs。
在我看来,4.4 系列内核根本看不到 nvme SSD。
有什么建议么?
答案1
这刚刚发生在我身上,结果发现nvme
内核模块没有加载到 initramfs 中。
当你进入 busybox 提示符时,请尝试modprobe nvme
。如果之后没有出现/proc/modules
,则表示缺少 initramfs。
只需添加nvme
到您的/etc/initramfs-tools/modules
文件,然后运行:
sudo update-initramfs -u -k all
它应该可以解决你的问题。
(有启动板账户的人应该向 Ubuntu 报告这个错误)
答案2
我使用 4.4.0-24 时也遇到了这种情况。今天似乎已推出的 4.4.0-28 已修复此问题。