Since Vista features the new boot loader system, multi-boot is not quite so trivial. There are various guides and FAQs on how to do XP/Vista dual boot (see e.g. here or here), but getting a GRUB based OS (such as Solaris 10 U1 or Debian Linux 3.1) dual booted is not very well documented.
I used the 5342 build of Vista, which ships with the bootsect.exe command in the \boot directory of the installation medium (in my case a DVD ISO image). Ths utility is only needed if you want to go back to the original Vista boot loader by running: bootsect.exe /nt60 ALL
I first installed Vista on my system with all defaults on my first hard drive (IDE 0:0). The new boot loader was in place on the MBR for that drive.
Now I installed Debian and agreed that GRUB should take over the MBR for the IDE 0:0 drive (/dev/hda). After that, Vista became invisible and Debian booted just fine from /dev/hdb (IDE 0:1).
Now, in Debian, you have to edit the /boot/grub/menu.lst that configures grub at run time. I simply added an entry for Vista:
| title |
Windows Vista (Build 5342) |
| root |
(hd0,0) |
| makeactive |
chainloader |
+1 |
Then you simply reboot and - voila: it should offer you a menu item for Vista. If you select that, the Vista boot loader takes over and the Windows OS comes up.
Some notes:
- I was using Virtual PC 2004 SP1 for this experiment. That is also the reason why I did not use Solaris 10, since VPC and Solaris are not really a happy couple. Since Solaris 10 U1 also uses GRUB, there should be no difference.
- For some strange reason I am getting a "Boot Failure" prompt now, right after the BIOS check. After hitting the <any> Key, I get to the GRUB menu.
- I have no idea if this will work similar on AMD x86 machines.