2

I have already read several answers and guides, including:

I have a pre-existing installation of Windows 10 (x64) installed on a PC. The motherboard comes with Class 3 UEFI Firmware (CSM Booting Not Supported). I've disabled Secure Boot for troubleshooting. My partitions are as follows:

      Partition ###  Type              Size     Offset 
      -------------  ----------------  -------  -------
      Partition 1    System             101 MB  1024 KB
      Partition 2    Reserved            16 MB   102 MB
      Partition 3    Primary            473 GB   118 MB
      Partition 4    Primary           2052 MB   473 GB
      Partition 5    Recovery          1794 MB   475 GB                                                                     

My understanding is that UEFI Firmware searches the EFI System Partition (partition 1) for files matching: <EFI_SYSTEM_PARTITION>/EFI/BOOT/<MACHINE_TYPE_SHORT_NAME.EFI>. Then the firmware 'hands off control' to whatever Boot Manager (case 1)/Boot Loader (case 2) is highest under Boot Priority in the firmware. Case 1 will 'Load other bootloaders' while Case 2 will 'Load a kernel' thus ending the early parts of the booting process and starting the OS.

Based off output from

bcdedit /enum

Windows Boot Manager is found on Partition 1 with path=/EFI/Microsoft/Boot/bootmgfw.efi which makes sense to me. Windows Boot Loader is found on Partition 3 with path=\Windows\System32\winload.efi.

This would be okay except that in the UEFI Firmware the under Boot Priority, Windows Boot Manager on partition 1 with the same file name which sounds right, but instead of Windows Boot Loader, I have the second listing UEFI: kX650znv512GP3 NVMe Toshiba SSD on Partition 3 with file name: /EFI/Microsoft/Boot/bootmgfw.efi. Upon setting the latter as the first boot priority, no OS loads and I get the a screen saying missing BCD files. Furthermore why does Partition 3 also have /EFI/Boot/bootx64.efi /EFI/Microsoft/Boot/BootMgFw.efi /Boot/BCD /Boot/boot.sdi /Boot/bootfix.bin?

So my questions are:

  • Why do I have several boot files outside the EFI System Partition (Partition 1)?
  • Why is my firmware listing what doesn't appear to be a bootable file (UEFI: kX650znv512GP3 NVMe Toshiba SSD on Partition 3 with file name: /EFI/Microsoft/Boot/bootmgfw.efi)?

When I install another boot manager to partition 1 (either GRUB2 or rEFInd), I want to be able to choose between Ubuntu and my current install of Windows 10. (Correct me if I'm wrong, but I don't think I'll need Windows Boot Manager since all it does is start winload.efi; a task rEFInd or GRUB2 should be up to). Will rEFInd automatically detect Windows 10 or will I have to manually edit it with the Windows 10 Boot Loader efi file (I currently don't know which that would be since there are a bunch on Partition 3)?

This website says that Windows Boot Manager (I'm assuming /EFI/Microsoft/Boot/bootmgfw.efi on partition 1) starts C:\Windows\System32\Boot\winload.efi.

1 Answers1

2

I'm just going to answer my own question since I finally got everything to work, and this might help someone else with similar problems or questions.

Question 1:

It seems that the efi files that matter (by default) are on your EFI System Partition (partition 1) usually shown in the firmware (under FS0) as /EFI/Microsoft/Boot/bootmgfw.efi and /EFI/Boot/bootx64.efi. bootx64.efi seems to be just a bootloader whereas bootmgfw.efi starts Windows Boot Manager. If you have only 1 OS (Windows) installed, then it shouldn't matter which efi file you choose to boot from as the Windows Boot Manager menu won't appear if it only detects 1 OS.

Question 2:

Honestly, I still don't understand why my firmware always adds /EFI/Microsoft/Boot/bootmgfw.efi (on Partition 3) to the boot list if I use the actual functional bootmgfw.efi located (on Partition 1). I also don't know why the nonfunctional efi file is on my C: drive (Partition 3) to begin with.

Question 3:

In my case, rEFInd detected every efi file on my hard drive, but could not boot Windows. I have no idea why this is. Furthermore, upon trying to boot one of the efi files, the screen flashed, the computer restarted, and when I looked at my boot order (in UEFI firmware), Windows Boot Manager was once again in the top spot. Since then rEFInd has been unable to boot at all even when I put it back as first in my order. It just results in the computer restarting (which I don't really care about because I just installed GRUB and then everything all worked alright except rEFInd).

tldr; Sometimes there are extraneous boot files and Windows 10 Boot Manager might murder rEFInd. This is on Dell 'BIOS' Firmware 1.2.2.