这是一个关于Windows 10和Ubuntu18.04的双引导系统的问题。双引导是用乌比夫设置的。
我将引导磁盘克隆到一个新磁盘上,然后将其替换为新磁盘。在那之后,Ubuntu停止了引导。我想让它重回正轨。
当我启动我的PC时,我会得到一个包含4个选项的grub菜单:
如果选择Ubuntu选项,将得到以下文本:
Booting a command list
error: no such device: B0ACCB58ACCB17AC
Press any key to continue..按下任何键系统挂起。
如果选择Windows选项,将得到:
error: no such device: 62A5-4B98.
error: file `/EFI/Microsoft/Boot/bootmgfw.efi' not found.
Press any key to continue...我仍然可以登录到windows,如果在引导过程中我选择了BIOS启动选项。当我看到菜单时:
如果选择P0、P1或P2选项,就会收到一条关于缺少引导记录的消息。如果选择Xubuntu,就会看到上面描述的grub菜单。如果我选择windows,我可以成功地引导到Windows。
如果在grub中的Ubunutu行上选择e,下面是我看到的情况:
setparams 'Ubuntu'
gfxmode $linux_gfx_mode
insmod gzio
insmod ntfs
set root='hd1,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd1,gpt4 --hint-efi=hd1,gpt4 --hint-baremetal=ahci1,gpt4 B0ACCB58ACCB17AC
else
search --no-floppy --fs-uuid --set=root B0ACCB58ACCB17AC
fi
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
linux /boot/vmlinuz-4.15.0-39-generic root=UUID=B0ACCB58ACCB17AC loop=/ubuntu/disks/root.disk ro rootflags=sync quiet splash $vt_handoff
initrd /boot/initrd.img-4.15.0-39-generic如何修复grub,以便再次通过grub引导Windows和Linux?
注意:以上所有我都是手动输入的(没有从启动屏幕复制粘贴),所以我对任何输入都表示歉意。
发布于 2018-12-02 03:13:23
您的问题是,文件系统UUID值在克隆磁盘后发生了更改,特别是有两个影响您的更改,即windows文件系统UUID和ubuntu更改。修复它所需的大多数信息都包含在这个有用的问题中,但是让我们详细说明一下缺失的细节。
启动并显示grub屏幕时,转到“高级.”并选择恢复模式。一旦启动进程完成,选择根shell。您的目标是找出新windows的新值(以前是62A5-4B98 )和新的linux (曾经是B0ACCB58ACCB17AC )的值。
在根shell中,使用以下两个命令:
fdsik -l
blkid第一个将向您展示现有的分区,您应该寻找一个描述"EFI系统“或类似的分区。这就是您在blkid输出中要寻找的分区。这将给你UUID的窗口。注意,根据您的配置,您可能有多个这样的分区。如果不知道更多,我就不能告诉你选择哪一个,假设你知道你的磁盘包含了什么,并且应该能够知道你可能在你的电脑上有哪些磁盘是无关的。UUID将有熟悉的XXXX-XXXX格式,因此应该很容易识别。
类似地,您需要找出用于引导linux的哪个分区。如果剩下的一次在同一个磁盘上的话,我猜这是开着的。找出哪一个最好的方法是临时插入你的旧磁盘驱动器(确保关闭你的电脑在这样做之前)并在上面运行blkid。它应该在其中一个分区上向您显示B0ACCB58ACCB17AC,并且您应该能够推断新驱动器上的哪个分区对应于该分区。这是有点不精确的科学,但很难给出准确的指示,而不看到屏幕上的一切。
重新启动并在grub菜单中按"Ubuntu“行上的e。用您为每个事件找到的值替换B0ACCB58ACCB17AC,然后按F10继续引导。
但是,引导将失败,因为您使用wubiuefi并需要挂载windows磁盘来加载linux磁盘。在Ctrl-Alt-F2终端中,您应该看到按Enter键进入恢复会话的提示符。去做吧。编辑/etc/fstab并用您找到的新值替换62A5-4B98。保存、重新引导、再次替换B0ACCB58ACCB17AC的顺序相同,现在您应该能够最终引导到linux中。
登录后,编辑/boot/grub/grub.cfg并查找/替换所有B0ACCB58ACCB17AC和所有62A5-4B98的新值。保存并运行update-grub。
现在,您应该可以通过grub菜单登录到Windows或Linux。
https://askubuntu.com/questions/1097794
复制相似问题