0

I need to re-create my UEFI boot entries. Which is Windows10 and LUKS with Linux Mint 20.

While trying to get my LUKS encryption partition to boot, I gave boot recovery a shot and got booted into my firm-ware recovery on re-boot which removed all UEFI entries after 20 seconds.

I really need my Windows partition to work immediately, so I am going to focus on that. I got a live usb with Mint 20 on and I can see that all partitions and UEFI files on the Boot partition are there.

After reading up on efibootmgr, I think that I need to do efibootmgr -c -d /dev/sda -p 2 -l \\EFI\\Boot\\Microsoft\\???.efi -L Windows10.

Is that correct? I am not set on the booter being GRUB2. I am also happy to use my firmware UEFI boot (which I believe can be managed via efibootmgr - see bottom of post).

  • UEFI BIOS Version: J3ET65WW (1.65) 2016-01-21
  • ME Firmware Version: 9.5.13.1706

How do I know which .efi file to use as loader?

/dev/sda2

$ tree . -L 3
.
├── EFI
│   ├── Boot
│   │   ├── bkpbootx64.efi
│   │   ├── bootx64.efi
│   │   ├── fbx64.efi
│   │   ├── grubx64.efi
│   │   └── mmx64.efi
│   ├── Microsoft
│   │   ├── Boot
│   │   └── Recovery
│   └── ubuntu
│       ├── BOOTX64.CSV
│       ├── grub.cfg
│       ├── grubx64.efi
│       ├── mmx64.efi
│       └── shimx64.efi
├── System Volume Information
└── boot-repair
    └── log
        ├── 20201014_021131
        ├── 20201014_022001
        └── 20201014_022629

EFI/Boot/Microsoft/Boot

$ tree EFI/Microsoft/Boot/ -L 1 | grep '.efi\|.dll\|.p7b'
├── bootmgfw.efi
├── bootmgr.efi
├── kd_02_10df.dll
├── kd_02_10ec.dll
├── kd_02_1137.dll
├── kd_02_14e4.dll
├── kd_02_15b3.dll
├── kd_02_1969.dll
├── kd_02_19a2.dll
├── kd_02_1af4.dll
├── kd_02_8086.dll
├── kd_07_1415.dll
├── kd_0C_8086.dll
├── kdnet_uart16550.dll
├── kdstub.dll
├── memtest.efi
├── winsipolicy.p7b

The linux boot recovery operation did install GRUB 2.04 and my PC boots into the minimal BASH-like terminal.

grub> list_env
error: file `/boot/grub.grubenv` not found.

grub> ls (proc) (hd0) (hd0,apple2) (hd0, apple1) (hd0,msdoc3) (hd0, msdos2) (hd1) (hd1,gpt6) (hd1,gpt4) (hd1,gpt3) (hd1,gpt2) (hd1,gpt1)

GParted overview of my GDT partitioned SSD GParted overview of my GDT partitioned SSD

$ sudo efibootmgr
BootCurrent: 000A
Timeout: 2 seconds
BootOrder: 0001,0007,0000,0003,0005,0006,0008,0009,000A,000B
Boot0000  Setup
Boot0001  Boot Menu
Boot0002  Diagnostic Splash Screen
Boot0003  Lenovo Diagnostics
Boot0004  Startup Interrupt Menu
Boot0005  Rescue and Recovery
Boot0006  USB CD
Boot0007* USB FDD
Boot0008* ATA HDD0
Boot0009* ATA HDD1
Boot000A* USB HDD
Boot000B  PCI LAN
Boot000D* ubuntu

1 Answers1

1

Can you boot into grub and then chainload Windows efi.

During grub you can press C to enter the CLI (you called it BASH-like terminal).

grub> set root=(hd0,gpt2) #sets / to the Efi partition
grub> chainloader /EFI/Microsoft/Boot/bootmgfw.efi #tell which efi file to laod
grub> boot #does the magic

if it works well, you might add this as a grub-entry. See here for more infos about creating an entry.

Boba Fit
  • 1,693