I have used a MacBook Pro as my secondary laptop since the day Boot Camp became available in 2006 – and as a primary laptop since the first-generation unibody aluminum machines in November 2008. The principal reason is the unmatched flexibility in operating systems and the demonstration opportunities that present themselves. I run my system in a triple-boot configuration split between:
- MacOS X 10.6 Snow Leopard
- Windows 7 Enterprise 64-bit Edition
- Windows Server 2008 R2 Enterprise with Hyper-V
I also run additional virtual machines from within MacOS under Parallels, as well as boot the Windows 7 Enterprise partition in Parallels as well. Getting this flexibility took a lot of effort, however. And my attempt with this post is to make sure no one else suffers the same pain I went through.
The steps I took to get this working were:
- Boot the system with the MacOS X Installation DVD that came with the computer. Run Disk Utility.
- Configure 3 partitions. The first as HFS+ and named Macintosh HD. The second should be FAT and named Win7. The third should be FAT and named Win2008.
- Format the partitions and reinstall MacOS.
- Download and install rEFIt from http://refit.sourceforge.net/ – this will give you a proper bootloader and fix an annoying partition synchronization issue.
- Within rEFIt – run the partition synchronization tool.
- Boot your machine by holding down the C key with the Windows 7 disc in the DVD drive. Install Windows 7, reformatting the Win7 FAT partition.
- Post-installation, install the Boot Camp utilities in Windows 7 and do whatever you want in that partition to setup Windows 7 to your preferences.
- Run rEFIt’s partition synchronization tool again – as the table will have changed after installing Windows 7.
- Boot your machine again by holding down the C key, this time with the Windows Server 2008 R2 disc in the DVD drive. Install Windows Server 2008 R2, reformatting the Win2008 FAT partition.
- Post-installation, install the Boot Camp utilities in Windows Server 2008 and do whatever you want in the partition.
- Run rEFIt’s partition synchronization tool again – as the table will have changed after installing Windows Server 2008 R2.
- At this point, you will be somewhat stuck because you will not be able to directly boot into Windows Server 2008 R2. So now comes the fun part. In MacOS X, start a Terminal window.
- Type “sudo fdisk -e /dev/rdisk0” and press ENTER (without the quotes).
- Enter your administrator password when prompted.
- Type “print” – you should see a list of 4 partitions if you followed the directions properly.
- Type “flag 4” and press ENTER.
- Type “write” and press ENTER.
- Type “quit” and press ENTER.
- Now, reboot your system with the Windows Server 2008 R2 DVD in the drive and boot it by pressing/holding the C key.
- When setup starts this time, choose Repair Mode and go into a Command Prompt.
- Go to the C:\ drive. It should be your Windows Server 2008 installation if things have worked properly. If not, you set the wrong partition as active so repeat the FDISK steps only flagging the number of your Windows Server 2008 R2 partition.
- Copy from the DVD drive BOOTMGR and BOOTMGR.EFI to C:\.
- Create C:\BOOT\ directory. Copy all of the contents and sub-directories from the DVD disc’s \BOOT\ subdirectory here.
- In the C:\BOOT\ directory, run “bootsect /nt60 c: /force /mbr”
- In the C:\BOOT\ directory run “bootrec /rebuildbcd” – and select all when it finds the operating systems.
- Reboot – you should now be able to choose between MacOS, Windows 7, and Windows Server 2008 R2 at boot in the rEFIt menu.
- Now, you can configure Parallels to boot your Windows 7 installation – it would be BootCamp / SATA first partition.
- DO NOT configure Parallels on the Windows Server 2008 R2 partition – unless you do not want to run Hyper-V. The Parallels Tools (and I would imagine the VMware Fusion equivalents) break the Hypervisor.
- Lastly, the current generation MacBook Pros will not run Hyper-V unless you install Windows Server 2008 R2 SP1 – this step must be done before enabling the Hyper-V role or you will get a BSOD from the video driver upon boot.
Hope this helps!