MBR Windows 10 + Debian 9.1 ext4

#1
Cannot boot Debian 9.1 using ext4 / with Windows 10 and EasyBCD 2.3 final. Any suggestions?

I have existing Windows 10 Pro installed on MBR disk using Windows MBR boot loader, with the usual three Windows partitions (System, C:, Data/Recovery). I installed Debian 9.1 into two logical partitions, and installed Grub into the / partition. Booting into Ubuntu USB I can verify the Debian / partition appears to correctly have /boot and grub configured.

The physical layout and partition numbers are (counting partitions from 1):
Primary 1 Windows System
Primary 2 Windows C:
Logical 5 Debian swap
Logical 6 Debian / (including /boot and grub)
Primary 3 Windows Data (recovery?)

When I boot I get the Windows boot menu choice. If I select the EasyBCD added Debian entry just get grub4dos command line. Does not matter if in EasyBCD I selected the auto option, or partition 6.
 
#2
One update - grub4dos (2014) does not support ext4. I re-installed Debian with an ext3 /boot partition as well as the swap and ext4 / partitions. System still did not boot into Debian, but grub4dos can ls the ext3 partition eg

# This works on ext 3 partition (/boot)
ls (hd0,4)/
# This does not work on ext4 partition (/) - Error 14: Filesystem compatibility error, cannot read whole file
ls (hd0,6)/
 
#3
And from the grub4dos command line this will now load the Debian Grub2 menu if I type the commands:

chainloader (hd0,4)+1
boot

So does anyone know how I can get EasyBCD to do this step directly from the WIndows boot menu? To summarize the partition structure now looks like:

Primary 1 Windows System
Primary 2 Windows C:
Logical 5 Debian ext3 /boot (includes gruib2 and /grub/grub.cfg)
Logical 6 Debian swap
Logical 7 Debian ext4 /
Primary 3 Windows Data (recovery?)
 
#4
Finally came back and figured this out. This is working with the partition layout from post #3. It does use one extra chained loader, but this adds less than one second delay.

In EasyBCD select "Add New Entry" then Operating Systems - NeoGrub, click Install. This is instead of using the Linux/BSD tab and adding a specific type.

Edit C:\NST\menu.lst. I only needed to boot a single Linux instance, so this works. Add these lines to auto-chain load Grub2 installed on (hd0,4) i.e. partition #5 /boot

default 0
timeout 1

title Debian 9.1
chainloader (hd0,4)+1
boot​
 

Ex_Brit

If you're going through hell, keep going
Staff member
#5
Glad you knew what you needed as it appears nobody else did. All the best :wink: