The problem I have is on a secure boot system my PE boots fine but it bypasses the grub options I've added, like bootable imaging apps and some other images for diagnostics.
It looks like you are installing/using Grub2
in legacy mode (installed to MBR
works differently and never executes any code written on sector 0
of a hard drive. Legacy BIOS boot process >1.
Complete power on self test (POST).2.
Check the boot order and if HDD is listed as first, check for MBR
magic number AA55
on LBA 0
(first logical sector).3.
magic number is present, execute the assembly language instructions written on the MBR
. This code will be different for each boot loader/boot manager. For example, Windows NT5
code will look for a partition marked as Active
and if one found, execute the code written on VBR
(Volume Boot Record) of the partition. This VBR code will then look for and load ntldr
(NT loader) and it's the responsibility of the ntldr
to proceed with OS loading process. Grub4dos
MBR code will usually search for and load "grldr
".UEFI BIOS boot process>
UEFI BIOS is written in high level languages like "C" (instead of Assembly) and has much more capabilities like reading a file system directly (ie FAT16/32 and/or NTFS in some cases). This allows the UEFI firmware to directly read and load the OS boot loader without the need to read and execute any RAW assembly code written on LBA 0
of the disk.
Here is how the general UEFI boot process works :1.
Complete the POST process.2.
Identify the "EFI System Partition" via checking the GUID (in case of GPT style partitioning). 3.
Directly read the file system and check for the presence of \EFI\BOOT\BOOTX64.EFI
file (UEFI x64 boot loader ) and chain-load it.BOOTX64.EFI
proceed with loading the respective OS (Windows/Linux) .If the firmware is capable of "SecureBoot" and if it's enabled, the boot loader should be a signed one. This will make sure that the boot process is free from any boot viruses.
Hope that now you will have a basic idea of how a UEFI boot process is different from legacy/mbr BIOS mode. Since the UEFI boot process completely ignores the MBR, executing grub4dos
or Grub2 legacy
code is not possible. If the UEFI firmware supports legacy/CSM
mode, you can enable it to boot from a grub4dos
based bootable USB stick.Grub2
has a UEFI version and one can actually create a multi-boot USB stick using it. However you need UEFI based bootable images and the Grub2 menu should be manually edited to chain-load the respective UEFI boot loader of each utilities. That's certainly not an easy task.