缺少根 VG,被丢弃到 initramfs shell

Kla*_*nDK 5 boot lvm initramfs linux-mint

我的 Linux Mint 17.1(64 位)在其操作系统驱动器(SSD)上使用 LVM。我一定是做了“某事”来破坏我的系统,因为上次我重新启动时,启动失败了。相反,我收到了消息“警报!/dev/mapper/mint--vg-root 不存在。删除到 shell!” 和一个 initramfs 外壳。我不知道如何继续。

我通常会更新正常的系统更新,但不要使用自定义内核或类似的东西。我也很长时间没有重新启动,所以我不知道这是最近的问题还是因为想要重新启动而未被发现。

我既不知道 grub 也不知道 initramfs,也没有任何从这种事情中恢复过来的经验。当然,我迫切需要访问我的数据!

其他帖子说这可能是由于升级到没有 lvm2 支持的内核引起的,并说它可以用这个或那个 Live DVD 修复。问题是,我无法再从 USB 或 DVD 启动,因为我仍然会出现在这个屏幕上。

我的下一步是断开SSD,看看是否我可以从其他介质引导,但是这不是一个真正的解决方案。

假设我知道如何从媒体启动,我该怎么办?关于我的情况,我还需要告诉你什么?

截屏

更新:

“lvm lvs”“lvm pvs”表示如下。我不知道当一切正常时这个输出应该是什么样子。这是否意味着它们都处于类似(坏)状态,还是什么?

在此处输入图片说明

我有一个 SSD,有两个 LV 用于 root 和交换,另一个 LV 基于两个独立驱动器上的两个 PV。LV 和 VG 的数量和命名正如我所料。

但是,我不知道如何阅读其他专栏。似乎所有卷都处于相似的状态(要么全好要么全坏),但我可能错了。

“fdisk -l”在我的 initramfs shell 上不可用,但我发现从媒体启动,所以这是从 LinuxMint 17.1 Live USB 运行时该命令的输出(安装卷后)(与当前操作系统):

$ fdisk -l
$ fdisk -l /media/mint/verylonguuidstring
last_lba(): I don't know how to handle files with mode 40755
$ fdisk -v
fdisk (util-linux 2.20.1)
$
Run Code Online (Sandbox Code Playgroud)

嗯,结果不大。这是我偶尔使用的名为 REDO Backup & Restore 的 Live CD 的结果。这提供了更好的结果,或者至少是实际输出。

在此处输入图片说明

至少,我所有的磁盘都可以挂载并且看起来完好无损,所以只是启动问题。

更新!

我做了一件大胆的事情,这似乎奏效了。在不同的介质上启动后,我安装了启动分区并修改了 /boot/grub/grub.cfg。在该文件中,“违规”标识符“/dev/mapper/mint--vg-root”出现了多次。我将它们全部更改为“/dev/mapper/ssd_vg-root_lv”,保存并重新启动。还有!它有效,我现在可以将我的正常操作系统启动到我常用的桌面。呼!

只是,GRUB 选择屏幕仍然等待 10 秒,但我设法关闭了“/etc/default/grub”中的“TIMEOUT”设置。

@Bratchley,@nkms,非常感谢您的支持!

Kla*_*nDK 2

确保您的“/boot/grub/grub.cfg”列出了正确的 VG 和 LV。在我的例子中,VG 名为“ssd_vg”,LV 名为“root_lv”,因此 grub.cfg 文件需要引用“/dev/mapper/ssd_vg-root_lv”(注意使用斜杠和破折号!)。