harbar.net component based software & platform hygiene

Running the Vista x64 Partition in VMWare Fusion

Print | posted on Friday, November 28, 2008 4:35 PM

A while back I posted my popular article series, Triple Boot MacBook Pro, which described the steps necessary to configure a three-way system running Mac OS, Windows Vista x64 and Windows Server 2008 x64.

At the time it was unfortunately not possible make use of VMWare Fusion’s killer feature – running a VM directly from the Boot Camp partition (no VHDs). This was due to a couple of “issues”, which have thankfully now been addressed by VMWare.

This article explains the issues and details the remaining tweaks necessary to run the Vista partition under VMWare Fusion for a triple boot system.

First up, here’s some eye candy of it up and running (click the images to view full size):

Vista x64 running in Fusion Unity:
Picture 1 

Vista x64 running in Fusion:
Picture 2 

You might be thinking, ‘So What the Fuss?’. But these two problems were stopping me from spending as much time in Mac OS as I would have liked. There’s just so many apps that you just can’t get on Mac OS (like a decent blog client for example, what is up with that, not very Web 2.0 is it? come apple, get it together). Now I can run my Vista partition in Boot Camp, I’m able to for the most part boot in Mac OS and that makes me pretty happy.

 


Part One: The Issues

Support for Vista x64 and activation under Fusion
Firstly Fusion 1.0 (and betas of 2.0) did not support an x64 Boot Camp partition. Although there was an easy fix for this by editing the VMX file, the real pain was that these releases couldn’t handle activation of Windows or Office. Every time you booted Windows (either in Fusion or natively) you would need to activate Windows and Office. Not good!

Thankfully, with the current release of Fusion (2.0 ((116369)), these problems go away. A fair few folk posted to the forums over at the excellent communities.vmware.com about them, and the guys making this software happen are really on the ball. Props to the Fusion team for their approach.

Windows Boot Loader & Fusion expected partition
The second “issue” was all about the Windows Boot loader. Fusion’s Boot Camp support is designed to support a single Windows partition, and of course in the triple boot scenario we have two. Fusion also expects the Windows partition to have certain characteristics – those that are only present if you have gone through the Boot Camp Assistant in Mac OS to prepare the Windows partition. Of course, in our triple boot scenario, we never run Boot Camp Assistant.

When you load up a Boot Camp partition under Fusion, you are asked for your password and Fusion “locks” that partition – you will notice the disk icon on the desktop disappears. If you have followed the original article series, the Windows Boot Loader files will be on the Windows 2008 partition, so whilst you could open the Boot Camp Partition in Fusion, Windows can’t find the boot loader to continue.

The simple solution here is to simply change the order in which you install the two Windows partitions, and install Windows Vista first. By doing this, the boot loader files will be on the Windows Vista partition. This allows the partition to be opened by Fusion and for Vista to boot. Of course if you would rather use the Fusion Boot Camp support to run Windows Server 2008, you should install this OS first – but remember it must be on the second partition for Fusion to recognize it.

I am hoping that in the future the Fusion dudes will add support for using multiple partitions in this manner – and I have experimented a little with hacks to make this work, however the boot loader issue will still exist. It’s also worth noting this is an edge case, so I wouldn’t imagine they would consider it a worthwhile investment of time over other feature requests!

 


Part Two: Getting it working in a triple boot scenario

OK, so we have what we need to run the Vista partition under Fusion, but our partition is not a Boot Camp one, so there are some other tweaks to make it all happy.

I deliberately walk through these tweaks below to explain the issues. However this is not the optimal order in which to apply them. For the optimal order please go to Part Three, towards the end of the article.

Fusion expected Partition upon guest creation
The first problem is that Fusion doesn’t like our partition, it wasn’t created by Boot Camp after all, so we will get a Boot Camp preprocessing failed error when we try and open the VM or configure it’s settings.

  1. Within Fusion, open the Virtual Machine Library.
    Picture 3
  2. Select the Boot Camp partition and click Settings. The error comes up.Picture 4
  3. Click OK. The VM Settings will be displayed.
    Picture 5
  4. Notice that Fusion is confused and thinks our VM is running XP.
  5. Select the combo box and change to Windows Vista x64, click Change when prompted.Picture 7
  6. The default RAM is 512Mb, and Vista needs a little more than that (!) so click Processors and RAM to set it to something more sensible. You can also use both cores if you wish.Picture 8
  7. Close the Settings window.
  8. Start up the guest and enter your password when prompted.
  9. Vista will boot (eventually).
Ouch! No Keyboard! 

However you may have a small problem at the logon screen. On my machines I could use the mouse, but not the keyboard and therefore was unable to logon! Not much use. Luckily there is a registry hack for this, which needs to be applied when you are in native Vista.

Registry hack for fixing keyboard under VMWare Fusion

Installing VMWare Tools & Network Driver
Assuming you have done the registry hack under native Vista, and can logon, Windows will start moaning about missing device drivers for new hardware devices.

  1. On the Found New Hardware dialogs, click Ask me again later. Keep clicking that option until the dialogs go away.
  2. From the Virtual Machine menu in Fusion, choose Install VMWare Tools.
  3. From the guest, open up the VMWare Tools disk and run setup, don’t forget to use the 64 bit one!
  4. Once the tools are installed and you have rebooted the guest and logged in you will get another Found New Hardware prompt: Windows needs to install driver software for your Ethernet Controller. Click Ask me again later.

This is because the preprocessing failed earlier, and we need to tweak the VMX file to add the necessary NIC.

  1. Shut down the guest
  2. From the Virtual Machine library, right click the Boot Camp Partition and click Show in Finder, this will display the VM files in a new window.
    Picture 9
  3. Quit VMWare Fusion.
  4. In the Finder window right click Boot Camp partition and click Show Package Contents.
    Picture 11
  5. Right click Boot Camp Partition.vmx and click Open With, followed by Other.Picture 12
  6. In the search box type textedit, select TextEdit from the Results pane and click Open.
    Picture 13
  7. In TextEdit, scroll to the end of the file and add the following line:
    ethernet0.virtualDev = "e1000".
  8. Save the file and close Text Edit. Close the two Finder windows.
  9. Start VMWare Fusion and start the Boot Camp Partition guest.

We are golden! Once we log in we have network you can activate Windows and Office and we are done!! This is the last time you need to Activate. You can use Device Manager to verify there are no other missing device drivers.

Aero glass
Aero running under Fusion doesn’t work as the virtualised graphic card is not capable of supporting the advanced features needed. Don’t bother trying to make it work, it doesn’t.

 


Part Three: The Optimal Order

The best order to apply the tweaks above is as follows.

  1. Apply the registry hack whilst in Vista natively.
  2. Use Fusion’s Virtual Machine Library to create the Boot Camp Partition guest, by clicking Settings, but do not start it, also change the RAM etc here.
  3. Edit the VMX file to add the Ethernet controller.
  4. Boot up the guest and install VMWare Tools

 


Part Four: Conclusion

It’s awesome! No doubt about it. Enjoy your triple boot Mac with Vista under Fusion capability. Below are some references to the source of the tweaks detailed in this article.

Feedback

Gravatar

# re: Running the Vista x64 Partition in VMWare Fusion

Superb. Looks to be an excellent product. Unfortunately I'm a bit out of date on my old Powerbook G4 but it does share a little bit of an ancestral link.

I look forward to trying Fusion out in the future, when and if I upgrade.

11/29/2008 1:15 AM | Alistair Laing
Gravatar

# re: Running the Vista x64 Partition in VMWare Fusion

I have a triple boot setup with XP and Vista 64. First I had set up Vista through bootcamp and then re-partitioned my Mac OS partition, and tried installing XP, but that didn't work (I think because I didn't format the partition correctly). I then ran Fusion, and it thought the new partition was empty, so I installed XP through Fusion. That worked, but then I couldn't boot up XP natively. I could still boot up Vista though. Then I changed my mind, and started over. This time I set up XP through bootcamp, and then installed Vista. I moved the Vista bootloader over to the vista partition, and then used EasyBCD to change the bootloader menus for both Vista and XP so they would only recognize their respective OS's. This is working well so I can boot natively into all three OS's with rEFIt.

Trying to get Fusion to recognize my two partitions was a bit of trouble. I used rawdiskCreator to create a new bootcamp vmdk file. Now I can run XP as a virtual machine (it's on the last partition, which I set up with bootcamp assistant). On the other hand, Fusion refuses to see anything on the middle partition, and thinks it's a blank partition. I think this is the same thing that happened before. I'm not 100% certain that installing Vista through Fusion will make it un-bootable, but I'm absolutely sick of re-installing Vista, and I just won't do it again unless I know for sure it will work. The end result is that it doesn't appear that Fusion is able to recognize any kind of bootloader on the non-bootcamp partition (no matter which flavor of Windows). I think this is a problem with Fusion itself, and not rawdiskCreator. So it seems that I have the choice of either running my non-bootcamp Windows natively, or running it as a virtual machine, but not both. This is a crappy situation. There's no reason that Fusion shouldn't be able to access the middle partition, since the bootloader is there, and rEFIt has no problem seeing it.

11/29/2008 1:46 AM | Alder Moore
Gravatar

# re: Running the Vista x64 Partition in VMWare Fusion

Alder: dude you rock -your mention of rawdiskcreator led me to a forum post that's enabled me to get it working. I will post another step by step. You should be able to use the same approach to get your three parts working as desired without the need for a bootloader.

11/29/2008 3:10 AM | Spence
Gravatar

# re: Running the Vista x64 Partition in VMWare Fusion

i have problem in installing base System device ! please help

3/5/2009 7:37 AM | reza
Gravatar

# re: Running the Vista x64 Partition in VMWare Fusion

Compliments to you!- Thanks a lot, this worked out for me with glance :)

thank you

~Adam Ullstrom

5/7/2009 9:08 AM | Adam Ullström
Gravatar

# re: Running the Vista x64 Partition in VMWare Fusion

You are SOOOO Awesome!!! Thank you! I have looked everywhere on how to get the ethernet controller working on the vista virtual drive.

6/25/2009 4:58 AM | Liza
Gravatar

# re: Running the Vista x64 Partition in VMWare Fusion

This is a GREAT post. Thanks.

6/28/2009 6:16 PM | gmarius

Post Comment

Title  
Name  
Email
Url
Comment   
Please add 4 and 5 and type the answer here: