EasyBCD + OpenSolaris?


I've been trying unsuccessfully for the last few days to set up tripleboot on my system between Vista, XP, and OpenSolaris May release (also known as Indiana). I had originally planned on using the Solaris-installed Grub, which worked fine for booting Solaris, Ubuntu, and Vista but for whatever reason, wouldn't load XP from Vista's bootloader. When I load Vista's bootloader directly (without Grub), XP will boot successfully. Using Grub, the computer just restarts after selecting XP in Vista's bootloader. Unless someone knows why this could be occurring and a way to fix XP boot with Grub, I decided to try the opposite using Vista's bootloader to try and chainload the Solaris Grub, so I naturally turned to EasyBCD.

In EasyBCD, I added a Linux entry, selecting the OpenSolaris partition. However, this doesn't work, and upon selecting it, just returns to the Vista boot screen without doing anything. I haven't really experimented heavily with NeoGrub yet. From what I've read, Solaris installs its own Grub variant that is able to properly handle OpenSolaris's ZFS root file system. Apparently, linux-installed grubs can't load solaris, but solaris can boot linux. I'm thinking the problem I'm running up against may be a result of EasyBCD not supporting OpenSolaris's boot peculiarities (such as ZFS or the different placement of Grub config files - menu.lst is located in /rpool/boot/grub/menu.lst for example).

If anyone has any experiencing booting the OpenSolaris May release from NeoGrub or with EasyBCD, I'd appreciate any help. Additionally, if someone has any suggestion to get XP to boot from Vista bootloader after using Solaris Grub, I'd be interested as well.

My drive/partition configuration is as follows:
160GB HD (Partition 1: Open Solaris; Partition 2: Ubuntu); 100GB HD (Partition 1: XP; Partition 2: Vista)
Remove the Linux (Solaris) entry and add it again. This time check the box that GRUB is not install to the MBR. This should fix it.
Hi Makaveli,

I've already tried this. NeoGrub seems to pick up the old ubuntu linux grub I have installed on the 2nd partition as opposed to the OpenSolaris Grub on the 1st partition. I can boot Ubuntu, but it doesn't help me with Solaris since the Ubuntu Grub is apparently not compatible with Solaris. Maybe if I manually configure NeoGrub in some way? Otherwise, I think the problem may have to due with general compatibility problems with OpenSolaris (I mentioned some in my above post). Thanks for your assistance!
You will have to manually edit the menu.lst and add the info for Solaris. I did not realize you had Ubuntu installed as well. My bad must have read over that part and it didnt register. Sorry.
You will have to manually edit the menu.lst and add the info for Solaris.

Thanks for your help! I tried copying over directly the entry from the Solars menu.lst to the neogrub menu.lst, but the configuration won't even show up in neogrub menu. I then added a "root 0,1" line, which made the entry show up, but still did not boot. The following is the entry from the Solaris grub (the partition is 0,1). Any help on what to enter into Neogrub would be appreciated! Thanks!

title OpenSolaris 2008.05 snv_86_rc3 X86
bootfs rpool/ROOT/opensolaris
kernel$ /platform/i86pc/kernel/$ISADIR/unix -B $ZFS-BOOTFS
module$ /platform/i86pc/$ISADIR/boot_archive
Hi Jaw, welcome to NeoSmart Technologies.

NeoGrub doesn't support ZFS and probably never will until it's released under the GPL.
What you posted above regarding OpenSolaris's compatibility with the GRUB bootloader is absolutely correct - you're going to have to use OpenSolaris's bootloader to get into the other Linux entries.

Now the problem you're facing w/ the original attempt is that OpenSolaris's bootloader wasn't installed to the bootsector, rather the MBR.

At this point:
1) Install OpenSolaris's copy of GRUB to the bootsector of the partition OpenSolaris is on. Beware that many versions of GRUB have issues with being installed to a partition on a different physical drive from the Windows one.
2) Install OpenSolaris's GRUB to the MBR and have it manage everything for you.

The second seems to be the path of the least resistance.