背景
我有一个双启动系统,在 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 系统位于哪个分区。
来源
所有功劳归于奥尔德弗雷德几天前他在一篇文章上帮助了我,经过几个小时的研究,我就能解读文档了。