如何清除其他安装中的引导加载程序和 UEFI 条目?

Pau*_*aul 11 dual-boot boot windows uefi

我有一台新的 Windows 笔记本电脑,我想用 Linux 进行双启动。在改变主意并回到 Mint 之前,我安装了 Fedora。我想保留 Win 8.1 和 Mint。

但是,现在我的 UEFI 启动菜单包含五个条目: 在此处输入图片说明

前两个带我去 Grub,我猜它是我安装 Fedora 时遗留下来的。接下来的两个都带我去 Linux Mint,最后一个带我去 Win 8.1。

我想删除 Fedora 条目和一个 Linux Mint 条目。“设置”界面让理解如何变得非常简单,但是:

  1. 我想确保删除这些条目不是愚蠢的
  2. 我不知道如何处理 Fedora 安装留下的那些 Grub 残余。我应该删除它们吗?别理他们?

如果我确实删除了 Grub 残余,我不知道该怎么做,甚至不知道它在哪个分区上。下面来看看我在 Gparted 中的分区表和我在 Windows 中的分区表。最后但并非最不重要的,这是 EasyBCD 显示的内容:

There are a total of 5 entries listed in the bootloader.

Default: Windows 8.1
Timeout: 30 seconds
EasyBCD Boot Device: C:\

Entry #1
Name: Fedora
BCD ID: {51954931-ff5c-11e4-8caa-f68841e7e615}
Device: \Device\HarddiskVolume1
Bootloader Path: \EFI\FEDORA\SHIM.EFI

Entry #2
Name: ubuntu
BCD ID: {51954933-ff5c-11e4-8caa-f68841e7e615}
Device: \Device\HarddiskVolume1
Bootloader Path: \EFI\UBUNTU\SHIMX64.EFI

Entry #3
Name: UEFI OS
BCD ID: {51954932-ff5c-11e4-8caa-f68841e7e615}
Device: \Device\HarddiskVolume1
Bootloader Path: \EFI\BOOT\BOOTX64.EFI

Entry #4
Name: ubuntu
BCD ID: {51954934-ff5c-11e4-8caa-f68841e7e615}
Device: \Device\HarddiskVolume1
Bootloader Path: \EFI\UBUNTU\GRUBX64.EFI

Entry #5
Name: Windows 8.1
BCD ID: {current}
Drive: C:\
Bootloader Path: \Windows\system32\winload.efi
Run Code Online (Sandbox Code Playgroud)

我应该如何处理这些额外的启动选项而不会使我的笔记本电脑变砖?

jdw*_*olf 9

在 Linux 中使用命令 efibootmgr

efibootmgr -v 
Run Code Online (Sandbox Code Playgroud)

列出条目。

efibootmgr -b 0002 -B
Run Code Online (Sandbox Code Playgroud)

将从菜单中删除条目号 2。

如果您想重新生成这些值以防它们被删除:首先安装您的 ESP。通常到 /boot/efi 但 /mnt 很好。然后

grub-install --target=x86_64-efi --efi-directory=[ESP mount] --bootloader-id=[name]
Run Code Online (Sandbox Code Playgroud)

(这不会重新配置 GRUB)

如果您需要使用 Shim 而不是 GRUB 重新输入 Fedora 或 Ubuntu 的条目

sudo efibootmgr -c -L Fedora -d /dev/sdX -p Y -l \\EFI\\fedora\\shim.efi 
Run Code Online (Sandbox Code Playgroud)

X是设备,Y是 EFI 系统分区 (ESP) 的分区号​​。

另请注意,\EFI\BOOT\BOOTX64.EFI当您从 UEFI 而不是 NVram 条目之一选择硬盘时,将加载。