Windows 10 双启动,Grub 不再起作用

Windows 10 双启动,Grub 不再起作用

过去几个月,我的 PC 上一直运行着双启动,Windows 10 和 EFI 分区安装在 NVMe 驱动器上,Ubuntu 安装在 SATA SSD 上。Windows 启动加载程序和 Grub 都安装在 NVMe 驱动器上,而 Grub 配置安装在 SATA SSD 上。

不幸的是,上次我使用 Windows 时,它没有正常关闭(我不得不关闭 PC 电源),现在 grub 只显示提示grub>。从主板的 EFI 选择 Windows 启动管理器确实可以正确启动 Windows。

所以我从 USB 启动,安装启动修复并运行该实用程序。无论我使用推荐的修复还是选择的修复Purge GRUB before reinstalling itUpgrade GRUB to its most recent version我都得到了与以前相同的结果。

虽然当我取消选择时SecureBoot我得到了另一个结果,但 grub 现在显示error: no such device: b5d41058-ecac-4877-895d-2f9206cef3d2

我已经研究这个问题五个小时了,所以我现在寻求你的帮助。

我生成了一个启动信息使用引导修复,它应该包含所需的一切。请注意,这sdb是实时 USB。

另外值得注意的是,我使用的是 AMD B550 芯片组,当我第一次将磁盘移到当前 PC 时,它要求我更新 grub。

非常感谢!

答案1

因此,我尝试将 Ubuntu 重新安装到 SATA SSD 上,但没有成功:grub 仍然损坏。我最终换用了 NVMe SSD(三星 980),问题解决了。

我不确定我的 860 是否坏了(虽然 SMART 没问题并且 Ubuntu 似乎可以正常安装在其上)或者这是否是由于 SATA 和 NVMe 驱动器混合搭配(可能是 AMD 芯片组)导致的奇怪行为。

我希望这可以以某种方式帮助遇到类似问题的人,我希望我知道我的电脑到底出了什么问题。

一年多后的更新:

我尝试在另一台计算机上使用相同的 SATA SSD 作为唯一的启动驱动器,并且遇到了类似的问题:即使在摆弄 BIOS 设置之后,主板也会每五次启动时检测到一次这种情况。

只有在我使用另一条 SATA 电缆后,主板才会持续检测到它,所以也许最初的问题出在 SATA 电缆上(因为我重新使用了完全相同的电缆)。

答案2

我不知道为什么会发生这种情况,但我想提出一个解决方案。

首先,启动Windows 10。

二、安装格鲁布.安装链接-->https://sourceforge.net/projects/grub2win/

安装后格鲁布,正确设置一切。

每次启动时都会显示 Grub2Win,然后您可以选择操作系统。

这就是我建议此解决方案的原因。

我不知道细节,但是当你的计算机启动 Windows 10 时,你的 Windows 默认引导加载程序只会选择 Windows 10 操作系统,就是这样。

Grub 安装在 SATA SSD 设备 sda 中。但是,当您选择安装了 Windows 10 的 nvme 时,没有 grub。Windows 10 只有默认引导加载程序。

因此,无论何时选择该 nvme,该 windows 10 总是仅选择 Win10。

所以我的计划是让你的 nvme 设备有一个非默认的引导加载程序,以便新的引导加载程序可以选择其他操作系统。

答案3

既然您说您可以从活动磁盘手动挂载您的 linux 文件系统,并且对其执行 fsck 不会返回任何错误,而且您可以进入 grub> 提示符,那么听起来要么是您的 linux 文件系统的 UUID 已经改变,要么是 grub 对其含义的理解已经被破坏了。

解决方法是通过以下方法之一进入磁盘上的系统,然后运行update-grub重新创建第二阶段 grub 引导加载程序信息。

有多种方式可以到达那里:

  • 启动与磁盘上安装的版本相同的 livedisk,然后 chroot 进入磁盘上的操作系统。这部分内容已经介绍过了这里
  • 使用grub>提示手动找到根磁盘,然后加载内核和 initrd ;如果您知道自己在做什么,这很容易,如果不知道,就很难,但有时,一旦找到根磁盘,您可以通过加载损坏的 grub 配置文件走捷径,然后在内存中编辑它以更正根磁盘。其中一些内容已涵盖这里
  • 使用 refind(从 USB 启动?)直接从文件系统启动内核和 initrd,绕过 grub(当它工作时这是最简单的,但它经常无法读取你的文件系统来找到内核)

使用上述方法之一后,update-grub应该可以修复问题。运行 也可能有帮助grub-install,但如果您收到 grub> 提示符,则可能没有必要这样做。

相关内容