双启动删除 Linux EFI 分区

双启动删除 Linux EFI 分区

因此,我尝试在笔记本电脑上重新安装 Linux。目前,我在 Windows 和 Linux 之间进行双启动,经检查,我有两个 EFI 系统分区 (ESP)。我想删除安装 Manjaro 时创建的分区,保留 Windows 分区,以防我想在那台特定机器上完全恢复到 Windows。

是否有特定的方法来检查哪个 ESP 适用于 Linux,哪个适用于 Windows 和 Linux?我假设第一个分区应该是 Windows ESP,但我不是 100% 确定。

答案1

跑步efibootmgr -v从 Linux(它将显示您的 EFI 启动菜单)并将每个条目的 GUID 与partx /dev/sda或显示的 GPT 分区 GUID 进行比较lsblk -o name,partuuid

你也可以看看里面并检查每个分区中有什么文件,因为每个 ESP 只是一个标准的可挂载 FAT32 分区:

  • Windows 始终会创建一个\EFI\Microsoft目录并安装 BOOTMGR (bootmgfw.efi) 作为其启动管理器。您还会发现“BCD”之类的文件。

  • Linux 通常会安装grubx64.efisystemd-bootx64.efi作为启动管理器。通常,这将是 Mint 自动挂载在 /boot/efi 的分区。


如果您只能启动 Windows 但不能启动 Linux:

  1. 从管理员控制台,使用mountvol /s临时将驱动器分配给当前 EFI 系统分区。

  2. 然后用来bcdedit /enum {bootmgr}验证指向 Windows BOOTMGR 的 EFI 启动项确实指向同一个磁盘(它应该显示您刚刚分配的字母):

    Windows Boot Manager
    --------------------
    identifier              {bootmgr}
    device                  partition=S:
    
  3. 现在重要分区在DiskMgmt中显示为S:,不重要的分区仍然显示,没有驱动器号。

(您也可以使用bcdedit /enum firmware列出全部EFI 启动菜单条目。这是 Linux 中“efibootmgr -v”的粗略 Windows 等效版本。)

相关内容