I'm looking for a clever way to upgrade to Windows 64 bits on my MacBook Pro's Boot Camp partition. This is the plan I have established (considering you can't just upgrade Win32 to Win64):
- Move the Boot Camp partition to a VMDK file;
- Overwrite the Boot Camp partition with a fresh Windows 7 64 bits install;
- Reinstall programs and non-transferrable stuff;
- On Mac OS, run both Win7 32 bits and Win7 64 bits inside VMWare Fusion virtual machines, and use Windows Easy Transfer.
The only problem here is that I don't know how to turn a physical partition into a VMDK file. There's enough room left on my drive for this, even without the slightest compression, I just don't know how.
I stumbled upon Live View, which can turn a raw image (dd style) into a VMDK. (There's no Mac OS version of it, but since it's Java, I assume I'll be able to run it anyways.) However, there's no explicit mention of Windows 7 in the list of supported operating systems.
4 Answers
This is the easiest way to do it.
- Launch Fusion.
- From Fusion's menu bar, click Window > Virtual Machine Library.
- Ctrl-click the Boot Camp icon in the left column.
- Click Import.
Enter an administrator username and password, then click Ok. For Fusion 3.x, choose a place to save the new virtual machine (the default location is a folder called Virtual Machines, inside your Documents folder), and click Save.
For Fusion 1.x and 2.x, when the Import Assistant launches, click Import.
When the import is completed, the newly created virtual machine appears in the Virtual Machine Library window.
Note: The time it takes for the import process to complete depends on the size of your Boot Camp partition.
1If you go in to Windows, you can use the free VMWare Converter utility.
I have no experience with VMWare fusion, but I do use a lot of the time with VMWare Workstation and it works well, so I am guessing it should work the same for fusion!
3I actually found an easier command-line way, and then it made me realize there is an easy GUI way.
VMWare Fusion is accompanied by a bunch of CLI utilities in its Contents/MacOS folder. The diskCreate tool can be used to clone an existing vmdk file (including vmdk files that refer to an actual drive or partition) onto a new one. Unmounting my Boot Camp partition (through the Disk Utility) and using this command:
sudo "/Applications/VMWare " \ -A onDemandAlloc -C "Boot Camp.vmdk" ~/Desktop/win7-32.vmdk
sudo chown $USER ~/Desktop/win7-32.vmdk("Boot Camp.vmdk" being located in ~/Library/Application Support/VMware Fusion/Virtual Machines/Boot Camp/Boot )
I was able to clone my Boot Camp partition into an usable vmdk file. Just so you know, the process took about an hour and a half (for a 120 GB partition with about 80 GB of actual data) during which the disk IO was (obviously) saturated, resulting in a significant slowdown of my system.
When creating the new VM though, I realized that there is a graphical user interface to do the same thing. If you create a VM without using an install disk, you have the option to choose an existing vmdk file, and the option to copy it. While I did not go through with it, this way of copying the vmdk seems to yield the same results as diskCreate.
I didn't use Boot Camp, but rather installed to a raw partition and used reFIT to boot. In order to pull the data off the partition I used the command line:
/Applications/VMware\ -r path/to/rawdisk-file.vmdk -t 0 path/to/virtualdisk-file.vmdk