混乱的 EFI 分区,启动时没有启动选项

混乱的 EFI 分区,启动时没有启动选项

我弄乱了 EFI 分区,现在当我启动计算机时,它会打开 BIOS 界面而没有任何启动选项,就好像我的磁盘已被擦除一样。但是,使用实时 USB(正确识别和启动)和 grub 命令行,我能够启动我的主要操作系统(Ubuntu)。但是我不知道如何解决这个问题。我尝试运行 grub-install /dev/sda,但它没有改变任何东西。

EFI 分区看起来完全没问题:它有正确的标志(esp,boot)并且里面有所有正确的文件。

tree /boot/efi/
└── EFI
    ├── Boot
    │   └── bootx64.efi
    ├── Microsoft
    │   ├── Boot
    │   .....
    └── ubuntu
        ├── fbx64.efi
        ├── fw
        ├── fwupx64.efi
        ├── grub.cfg
        ├── grubx64.efi
        ├── mmx64.efi
        └── shimx64.efi

我应该检查什么?我遗漏了什么?

这是我的分区表:

parted /dev/sda print
Model: ATA Crucial_CT525MX3 (scsi)
Disk /dev/sda: 525GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 
Number  Start   End     Size    File system  Name                          Flags
 1      1049kB  1612MB  1611MB  fat32        EFI System Partition          boot, esp
 2      1612MB  87.9GB  86.3GB  ext4         Ubuntu
 3      87.9GB  281GB   193GB   ext4         Home
 5      290GB   290GB   16.8MB               Microsoft reserved partition  msftres
 6      290GB   405GB   115GB   ntfs         Basic data partition          msftdata
 8      405GB   500GB   94.4GB  ntfs         Data                          msftdata
 9      500GB   525GB   25.3GB  ext4         Backup OS

如您所见,EFI 分区已正确设置:

~# efibootmgr 
BootCurrent: 0006
Timeout: 2 seconds
BootOrder: 0006,0002,0003,0001,0000,0005
Boot0000* ubuntu
Boot0001* Windows Boot Manager
Boot0002* grub
Boot0003* Windows Boot Manager
Boot0005* GRUB 
Boot0006* UEFI:  SA04G PMAP

答案1

查看分区号似乎首先安装了 Ubuntu,占据了前几个分区(包括 ESP),然后安装了 Windows(MS 保留的是分区 5)。

如果您有 Windows 安装/恢复 USB/DVD,请尝试使用以下方法修复启动:

bcdboot N:\windows /s M: /f UEFI

其中 N:是 Windows 分区,M:是 ESP(使用 diskpart.exe 根据需要分配驱动器号) - 示例中的驱动器号仅用于示例,执行命令时使用您映射的驱动器号。

如果命令成功完成,Windows 将默认启动。最终会出现一条错误消息,告诉您 ESP 出了什么问题。

相关内容