hakuna-m / wubiuefi

fork of Wubi (https://launchpad.net/wubi) for UEFI support and for support of recent Ubuntu releases
GNU General Public License v2.0
1.05k stars 148 forks source link

Missing ubuntu entry in Windows 10 Boot Manager #15

Open mcbyte-it opened 8 years ago

mcbyte-it commented 8 years ago

I just installed Ubuntu Mate on my Windows 10 Pro 14393 (Anniversary Edition). Wubi install failed first time after downloading the iso (couldn't extract). I then repeated another time by mounting iso in explorer and installation went fine, it rebooted and installed ubuntu. But now I don't see Ubuntu in the Windows boot manager, laptop boot directly into Windows, bcdedit /enum doesn't show anything for ubuntu, just Windows boot manager and Windows 10.

I am using an UEFI system, without secure boot, and GPT partition table.

can I add the entry with bcdedit manually? what command should I run?

mcbyte-it commented 8 years ago

Checking bcdedit with detailed enum, I see it is there, but now showing:

C:\>bcdedit /enum firmware

Firmware Boot Manager
---------------------
identifier              {fwbootmgr}
displayorder            {bootmgr}
                        {cbfe2a65-d996-11e5-8118-8b921f5b8924}
timeout                 10

Windows Boot Manager
--------------------
identifier              {bootmgr}
device                  partition=\Device\HarddiskVolume4
path                    \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI
description             Windows Boot Manager
locale                  en-US
inherit                 {globalsettings}
default                 {current}
resumeobject            {cbfe2a61-d996-11e5-8118-8b921f5b8924}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30

Windows Boot Manager
--------------------
identifier              {cbfe2a65-d996-11e5-8118-8b921f5b8924}
device                  partition=\Device\HarddiskVolume4
path                    \EFI\ubuntu\wubildr\shimx64.efi
description             Ubuntu MATE
locale                  en-US
inherit                 {globalsettings}
default                 {current}
resumeobject            {cbfe2a61-d996-11e5-8118-8b921f5b8924}
displayorder            {current}
toolsdisplayorder       {memdiag}
timeout                 30
mcbyte-it commented 8 years ago

I found out that it doesn't show because the entry is not in the {bootmgr} display order, I had to execute manually the command:

bcdedit /displayorder {id} /addlast

Now it shows upon boot, but it still doesn't work:

File: \EFI\ubuntu\wubildr\shimx64.efi
Status: 0xc000007b
Info: The application or operating system couldn't be loaded because required file is missing or contains errors.
mcbyte-it commented 8 years ago

Guess this is my final update:

The entry in {fwbootmgr} works if I go to the bios settings, there I see Ubuntu, and when I select it to override default boot Ubuntu works perfectly.

The problem is that my bios doesn't show boot options, so each time I want Ubuntu I have to start with bios and override, or set it as default.

Is there a way to enable EFI boot with the Windows Boot Manager?

hakuna-m commented 8 years ago

The problem is that my bios doesn't show boot options, so each time I want Ubuntu I have to start with bios and override, or set it as default.

Maybe, it is helpful to manage EFI boot options without starting firmware/BIOS. There are Windows programs like EasyUEFI which can do it.

It is also possible to use bcdedit to manage EFI boot options. e.g.

bcdedit /set {fwbootmgr} displayorder {id} /addfirst

to set the entry with {id} to the top of the firmware/BIOS boot menu.

Is there a way to enable EFI boot with the Windows Boot Manager?

EFI boot is enabled because your Windows uses the Windows Boot Manager for EFI systems but there are known issues with non-Microsoft programs if you want to start them from BCD menu. Wubi has similar problems as described here for EasyBCD. That is the reason why Wubi uses the firmware/BIOS menu if your Windows is installed in EFI mode.

enochmh commented 7 years ago

Thanks @hakuna-m for the workaround to this problem. I'm still unable to make windows boot manager show the ubuntu entry, but now every time I want to switch to ubuntu I only have to use EasyUEFI then select the ubuntu entry and clic one time boot. Then I reboot the pc and voila!

nhymxu commented 7 years ago

EFI system need to choose when bios logo load ( press some function button to display boot menu - using when choose usb device to boot ), then wubi display here.

Because EFI system load menu from EFI system partition - not windows boot menu

enochmh commented 7 years ago

@nhymxu unfortunately that does not work for me. I'm using a toshiba radius 12. When I press f12 and then on the boot menu nothing is there. there is no entry for wubi. only the usb boot option and the ssd.

hakuna-m commented 7 years ago

@enochmh Interesting. Regarding Gentoo Wiki your Toshiba Radius 12 has only poor UEFI support:

Long version: The system supports it, but poorly.

But if Windows 10 is preinstalled in UEFI mode, you need UEFI support to run Windows 10. So it is not really a good option to switch it off for a dual-boot with Ubuntu. So it seems Wubiuefi with EasyUEFI is also a solution for a firmware/BIOS with poor UEFI support.

miluoZ commented 7 years ago

Here is just my comment. My computer is Mini PC Intel® NUC Kit NUC6i7KYK. At first, I installed win10. Then I installed Ubuntu 16 with wubiuefi. Due to EFI, there's no windows manager. It just goes through into win10. I checked it with EasyUFI under Win10. I found Ubuntu was there with "hidden" status. I moved it to the top and switched shimx64.efi to grubx64.efi (because I disabled the secure boot). Then I restarted the computer. Everything is ok~

hakuna-m commented 7 years ago

@miluoZ Thanks for your comment.

and switched shimx64.efi to grubx64.efi (because I disabled the secure boot)

That should be not necessary. shimx64.efi also launches grubx64.efi if Secure Boot is disabled.

suoko commented 7 years ago

Hi there,

I had similar problems with an acer: the entry was not showing it up, so I forced it with commmand "bcdedit /displayorder {id} /addlast". This way I can see the entry in the win boot loader but still it's not loading, giving oxc00007b error. Then I tried creating a new entry with easyuefi but it's not showing neither in the uefi menu nor in the win boot loader. I also tried with visual bcd editor but it's not that easy to configure. When adding entries with this sw I can see them in win boot loader though. Any suggestions ?

hakuna-m commented 7 years ago

the entry was not showing it up, so I forced it with commmand "bcdedit /displayorder {id} /addlast".

The bcdedit commands to build a new Wubiuefi entry are: