How to dual boot Haiku with other OS using GRUB4DOS

Hello everyone. I have a question on how to dual boot Haiku with Windows (in my case). I want to use GRUB4DOS for that, and my setup is as following:

hd0,1 (Windows system Reserved partition)
hd0,2 (Windows system partition)
hd0,3 (Windows Recovery partition)

hd1,1 (Haiku partition)
hd1,2 (my personal storage partition)

I have GRUB already installed and I can access the menu.lst file from Linux live disks, and I wonder if there is a way on how to make it work.

1 Like

If you only want to boot Haiku and Windows you night consider using Haikus multiboot, or if efi rEFInd.

Haiku can be booter with grub however, but this isn’t autodetected and a bit cumbersome to setup (with a chainloader command)

1 Like

Well, my PC is pretty old and it doesn’t support EFI boot. That’s why I ask if anyone knows how to set it up with GRUB4DOS

Check this thread:

1 Like

That is why i suggested to try out bootmanager (userguide link)

Unless you have good reasons (e.g existing linux installation) I would recomend against using grub or any fork of it.

2 Likes

I see you use 2 disks to host different OSes. And based on configuration file name (menu.lst) this configuration is similar or identical to Grub Legacy.

Grub Legacy deals with BIOS listing of disks: hd0 is the first, hd1 is the second. You probably have GRUB4DOS stage1 installed in MBR of hd0 (and thus risk it to be rewritten each time Windows decides to do so). Maybe it would make sense to switch the disk order even if your boot menu will show identical. Haiku is not known to sporadically kill MBR of disk where it is installed.

Additionally, you need some storage for GRUB4DOS stage 1.5 (this one usually resides in first sectors of Linux partition not accessible from file system) and stage 2 (this one usually resides in Linux partition, accessible from file system). Because you do not have Linux, you may need some small partition (100 MB) just for GRUB4DOS installation.

Additionally, Grub Legacy, and probable also GRUB4DOS counts disks and partitions from 0, not from 1. So, your layout in Grub Legacy terminology is:
(hd0): (hd0,0), (hd0,1) and (hd0,2)
(hd1): (hd1,0), (hd1,1)

By default Grub Legacy (and probably also GRUB4DOS) only accesses the disk it is installed to. To access the 2nd disk, map command is used.

Having said all the above, I propose the following schema:
(hd0,0) - GRUB4DOS installation
(hd0,1) - Haiku
(hd0,2) - Personal data

(hd1,0) - Windows system reserved
(hd1,1) - Windows system
(hd1,2) - Windows recovery

In this case, your menu.lst is similar to the following:

title Windows
map (hd0) (hd1) # These 2 map commands exchange
map (hd1) (hd0) # HDDs to access the 2nd one
rootnoverify (hd1,1)
makeactive # This is only necessary for Windows 7 and above
chainloader +1

title Haiku
root (hd0,1)
chainloader +1

Hopefully this will work.

2 Likes