安装 Windows 后无法在磁盘上安装 GRUB

安装 Windows 后无法在磁盘上安装 GRUB

背景

我有一个双启动系统,在 120GB SSD 上安装了 Ubuntu 20.04,在 500 GB NVME 上安装了 Windows 10,用于游戏。

我不得不重新安装 Windows 操作系统,现在我即使我在 BIOS 中将其设置为主驱动器,也无法启动我的 Ubuntu 操作系统。而是直接启动进入 Windows。

当我移除装有 Windows 的 NVME 时,出现了蓝屏。

我尝试过什么?

Reddit 用户建议我从 USB 中加载 Live Ubuntu 版本:reddit 帖子

我遵循了本教程:教程

根据其他线程,我做了略有不同的事情,但本质上是相同的方法,显然没有运气。

问题/错误

  • 我以 EFI 模式从 USB 启动到 Ubuntu。单击“尝试 Ubuntu”。
  • 使用以下方法找到我的 Ubuntu 驱动器fdisk -l
  • EFI使用以下方式挂载分区mount /dev/sdb1 /mnt
  • 使用以下方法将 GRUB 安装到分区上grub-install --boot-directory=/mnt /dev/sdb

完整终端会话:Paste bin 上的终端命令/输出

我收到了这些错误:

# grub-install --boot-directory=/mnt /dev/sdb
Installing for i386-pc platform.
grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
grub-install: error: will not proceed with blocklists.

驱动信息来自fdisk -l

Disk /dev/sdb: 111.81 GiB, 120034123776 bytes, 234441648 sectors
Disk model: ADATA SU655     
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 1F53C55F-A945-4522-B8CA-FB528B52CA1D

Device       Start       End   Sectors   Size Type
/dev/sdb1     2048   1050623   1048576   512M EFI System
/dev/sdb2  1050624 234440703 233390080 111.3G Linux filesystem

我真的不明白这里的问题。我读过这个精彩的帖子:grub2-install:“此 GPT 分区标签不包含 BIOS 启动分区” 其中一个回复解释了 EFI 启动和 BIOS/传统模式之间的区别。由于我的驱动器上有一个 512 MB 的 EFI 分区,所以我更困惑为什么这不起作用。

答案1

问题

grub-install --boot-directory=/mnt /dev/sdb尝试执行 BIOS 安装。但是,驱动器已经有一个 EFI 启动分区。

解决方案

相反,boot-repair需要工具来为 EFI 分区重新安装 GRUB。

如果您想使用 GUI 版本,请boot-repair按照本教程操作:启动修复,恢复操作系统访问的简单工具

确保在底部配置高级设置并指定 EFI 系统位于哪个分区。

来源

所有功劳归于奥尔德弗雷德几天前他在一篇文章上帮助了我,经过几个小时的研究,我就能解读文档了。

相关内容