How to use Windows 10 graphical bootloader instead of grub?

Basic idea - copy the boot record of our linux distro partition to Windows , and using BCDEdit to create a new entry in the BCD store that will point to that file. This way Windows will display a menu at boot time that will give you a choice between Windows and Linux distro.

Boot into Linux First, create a directory to save boot record. Open a terminal and enter the following:

sudo su

mkdir /mnt/share

Write the first 512 bytes of our linux disro partition(sdxy) to a file

dd if=/dev/sdx of=/mnt/share/linux.bin bs=512 count=1

copy the linux.bin file located in /mnt/share/ to any other desired location.(will need it after booting into windows)

Boot into windows open the volume where you copied the linux.bin file.

Copy that file to the root of the Windows volume (e.g., C:).

use BCDEdit to add an entry to Windows BCD store. Administrative privileges are required to use BCDEdit, so use Win+r, type cmd, and then press CTRL+SHIFT+ENTER. start by creating an entry for our Linux distribution. Note here that you are free to choose another entry name if desired:

bcdedit /create /d “Linux” /application bootsector

BCDEdit will return an alphanumeric identifier for this entry that I will refer to as {ID} in the remaining steps. You’ll need to replace {ID} by the actual returned identifier.Next, specify which partition hosts a copy of the linux.bin file:

bcdedit /set {ID} device partition=c:

The path to our linux.bin file:

bcdedit /set {ID}  path \linux.bin

An entry to the displayed menu at boot time:

bcdedit /displayorder {ID} /addlast

and finally, let’s specify how long the menu choices will be displayed:

bcdedit /timeout 30

On a final note, if at any time you want to eliminate the Linux menu option simply delete the BCD store entry you created using the following command:

bcdedit /delete {ID}

Now Make windows bootloader the default

bootsect /nt60 C: /force /mbr

That’s it! Now reboot and you will be presented with menu where you can choose to boot to Windows or Linux.


Im not sure if this will work, but I did read about a tool called EasyBCD (https://neosmart.net/EasyBCD/) that may help you out. This article kinda explains it: https://www.groovypost.com/howto/dual-boot-windows-10-linux/ . This is their Docs: https://neosmart.net/wiki/easybcd/basics/adding-entries/ .

Disclaimer: I personally have never used this tool, so use at your own risk.

If your system supports UEFI and looks are the problem, (I do agree, grub is not ideal looks-wise...) I'm currently Multibooting Windows 10 and Ubuntu and using reFIND with a custom theme that I tweaked that looks decent enough for me. (https://www.rodsbooks.com/refind/themes.html)