1

I tried adding grubx64.efi in the Windows Boot Manager using BCDEdit. However when I boot up my computer and try to start GRUB from Windows Boot Manager by clicking on the entry I created, I get:

File: \EFI\ubuntu\grubx64.efi

Status: 0xc000007b

Info: The application or operating system couldn't be loaded because a required file is missing or contains errors.

I know that the efi file works because I can boot GRUB up, from the same file, from the same location (the ESP partition) using an EFI shell, such as the one found in this answer: https://unix.stackexchange.com/a/63898/167564

Here's my bcdedit output:

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\Microsoft\Boot\bootmgfw.efi
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
flightsigning           Yes
default                 {current}
resumeobject            {4c60dca4-e732-11e5-be25-b3798e2bd780}
displayorder            {current}
                        {4c60dcaf-e732-11e5-be25-b3798e2bd780}
toolsdisplayorder       {memdiag}
timeout                 10

Windows Boot Loader
-------------------
identifier              {current}
device                  partition=C:
path                    \WINDOWS\system32\winload.efi
description             Windows 10
locale                  en-US
inherit                 {bootloadersettings}
recoverysequence        {4c60dca6-e732-11e5-be25-b3798e2bd780}
recoveryenabled         Yes
isolatedcontext         Yes
flightsigning           Yes
allowedinmemorysettings 0x15000075
osdevice                partition=C:
systemroot              \WINDOWS
resumeobject            {4c60dca4-e732-11e5-be25-b3798e2bd780}
nx                      OptIn
bootmenupolicy          Standard

Real-mode Boot Sector
---------------------
identifier              {4c60dcaf-e732-11e5-be25-b3798e2bd780}
device                  partition=\Device\HarddiskVolume2
path                    \EFI\ubuntu\grubx64.efi
description             Grub Test
locale                  en-US
inherit                 {globalsettings}
flightsigning           Yes
custom:23000003         {current}
custom:23000006         {4c60dca4-e732-11e5-be25-b3798e2bd780}
custom:24000001         {current}
                        {4c60dca8-e732-11e5-be25-b3798e2bd780}
custom:24000010         {memdiag}
custom:25000004         10

As you can see by the output, the last entry was the one I experimented trying to get Grub to work, the one that says "Real-mode Boot Sector". I created it by creating a copy of "{bootmgr}", and renaming it to "Grub Test", and changing the path to where grub was located. I saw this answer, and it says the correct entry is bootsector, so I went into regedit and changed it from "Windows Boot Manager" to "Real-mode Boot Sector", by changing values under BCD00000000 as explained in this post: Windows 8.1 UEFI x64 is not able to boot-up UEFI Images

I also tried changing it to:

  • 0x10100003 (Firmware Application)
  • 0x10100002 (Windows Boot Manager)
  • 0x10200003 (Windows Boot Loader)
  • 0x10400008 (Real-mode Boot Sector)
  • 0x20200008 (Inherited Settings)

However they all ended up with:

File: \EFI\ubuntu\grubx64.efi

Status: 0xc000007b

Info: The application or operating system couldn't be loaded because a required file is missing or contains errors.

Can I somehow make Windows Boot Manager be able to boot Grub? I searched all over the Internet and couldn't find anything of use to me, I'm kind of frustrated.

Also, secure boot is turned off.

  • I would recommend using a third-party tool such as Visual BCD Editor that has a preloaded template for GRUB. If it works, you can then compare its differences to yours. – Bob Nov 7 '16 at 5:23
  • Also, what device are you trying this on? Did it come with 64-bit Windows preinstalled? Note that some systems come with 32-bit UEFI firmware (even on 64-bit CPUs) that cannot directly load 64-bit bootloaders. – Bob Nov 7 '16 at 5:25
  • I tried it on my laptop which has 64-bit windows installed, which I'm going to assume means 64-bit UEFI firmware – Mike B Nov 7 '16 at 23:53
  • Same error code with the preloaded template Visual BCD Editor offered for Linux/OS X Loader as I had with my previous configuration :( – Mike B Nov 8 '16 at 0:22
  • Hm. There's two other things you can try: add GRUB directly as an additional EFI boot entry (so you use your motherboard's boot menu rather than loading through the Windows one), or try booting the Linux kernel directly via EFIstub. – Bob Nov 8 '16 at 0:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.