Migrating from Parallels 8 to Virtualbox

TL;DR : Virtualbox can open a Parallels 8 virtual disk directly. But, the virtual disk is buried within a .hdd package which is buried within the Parallels .pvm package.

As a Mac user who migrated from Windows a few years ago, I've never quite been able to lose my Windows connection. There's always something that just isn't available in OS X. This is especially true living in China where the majority of online banks still only support Internet Explorer and some government departments mandate Windows XP for some tasks.

Rather than use Bootcamp I've been a long time user of Virtualbox. It's free and, compares well with the main opposition, Parallels and VMWare Fusion. However, a recent MacUpdate bundle purchase left me with a licensed copy of the latest Parallels release, version 8.

Of course, I gave it a go, after all, commercial software must be better than free, right? 

First impressions were good. Parallels 8 imported my Virtualbox virtual machines quickly and effortlessly and, once Parallels tools were installed, the machines worked flawlessly. So smooth was the transition that I rashly decided to remove my Virtualbox hard disk files that were now taking up about 40GB of much needed disk space on my Mac. 

That was a mistake.

Over the following weeks, my virtual machines continued to run and perform as expected. However, I noticed that when running Parallels, everything else on my Macbook was grinding to a halt, especially if the Mac had already been running for a few hours. In fact, often, to start a Parallels 8 virtual machine, I had to close most other applications or reboot my machine first. A little bit of investigation showed that Parallels was taking a huge chunk of memory causing a lot of disk swapping activity.

I decided to revert to Virtualbox and compare the memory footprint with Parallels. It's at this point that I regretted deleting my Virtualbox virtual disks.

Searching the web for methods to migrate from Parallels 8 to Virtualbox failed to result in any usable methods. There are options that suggest removing Parallels 8 Tools, installing a VMWare or Microsoft converter to convert the virtual disk (from inside the virtual machine) to a VMWare or Microsoft file. All well and good, but, obviously this would require; enough free space in the virtual machine to create the new disk image, significant time because virtual machines are still slower than native machines and some means of copying the new virtual disk from the guest to the host which means re-installing Parallels 8 tools. Lot's of time, several reboots and considerable effort.

According to Virtualbox, it can use Parallels .hdd drives. My first problem was finding the Windows.hdd file. In my Virtual machines directory, I only had a Windows.pvm file, sized at about 20GB. Was this my virtual disk? Virtualbox said no. Of course, on OS X it's not unusual for something that looks like a file to actually be a Folder (or in this case a Package). Sure enough, right clicking on the Windows.pvm file revealed  a "Show Package Contents" entry. Clicking through revealed a Windows.hdd file. Fantastic I thought. 

Unfortunately, when using a file dialog to choose a file, you can't drill down to the contents of Packages so, I had to copy all 20GB of the Windows.hdd file out of the Package. Returning to Virtualbox, I pointed my virtual machine at the Windows.hdd and… error. It still didn't work. Perhaps Parallels 8 .hdd files have changed since the version that  Virtualbox is supposed to support.

Back to Google for a few hours searching but to no avail.

Then, suddenly I had a thought. What if, the Windows.hdd is also a folder. Right click, once again revealed a "Show Package Contents" menu item and choosing that took me down one more level into yet another folder.

This new folder contained yet another Windows.hdd file which was zero bytes in size. However, more interestingly there was a Windows..hdd.o.{long guid type string}.hds file in this folder sized at 20GB.

Once again, I copied a 20Gb file out of the nested Packages and into my Virtualbox virtual machine directory. This time, I pointed Virtualbox at the .hds file and Windows started fine.

All that I did to tidy up was shutdown Virtualbox, rename the long GUID based file to a more manageable window.hdd and re-attach it to my Windows virtual machine.

Finally, I had successfully migrated from Parallels 8 to Virtualbox and all that was actually needed was to copy and optionally rename a single file.

And yes, my thoughts on performance were correct. When Parallels 8 was running the virtual machine (in a window, none of the fancy integration stuff) it was using a total of 1.5GB of memory for a 768MB Memory machine. Virtualbox, running the same machine takes a fraction under 1GB of memory.

More importantly, I can now have my virtual Windows machine running and still use other applications on my Macbook.

#blog  

Migrating from Parallels 8 to Virtualbox TL;DR : Virtualbox can open a Parallels 8 virtual disk directly. But, the virtual disk is buried within a .hdd package which is buried within the Parallels .pvm package. As a Mac user who migrated from Windows a few years ago, I’ve never quite been able to lose my Windows connection. There’s always something that just isn’t available in OS X. This is especially true living in China where the majority of online banks still only support Internet Explorer and some government departments mandate Windows XP for some tasks. Rather than use Bootcamp I’ve been a long time user of Virtualbox. It’s free and, compares well with the main opposition, Parallels and VMWare Fusion. However, a recent MacUpdate bundle purchase left me with a licensed copy of the latest Parallels release, version 8. Of course, I gave it a go, after all, commercial software must be better than free, right? First impressions were good. Parallels 8 imported my Virtualbox virtual machines quickly and effortlessly and, once Parallels tools were installed, the machines worked flawlessly. So smooth was the transition that I rashly decided to remove my Virtualbox hard disk files that were now taking up about 40GB of much needed disk space on my Mac. That was a mistake. Over the following weeks, my virtual machines continued to run and perform as expected. However, I noticed that when running Parallels, everything else on my Macbook was grinding to a halt, especially if the Mac had already been running for a few hours. In fact, often, to start a Parallels 8 virtual machine, I had to close most other applications or reboot my machine first. A little bit of investigation showed that Parallels was taking a huge chunk of memory causing a lot of disk swapping activity. I decided to revert to Virtualbox and compare the memory footprint with Parallels. It’s at this point that I regretted deleting my Virtualbox virtual disks. Searching the web for methods to migrate from Parallels 8 to Virtualbox failed to result in any usable methods. There are options that suggest removing Parallels 8 Tools, installing a VMWare or Microsoft converter to convert the virtual disk (from inside the virtual machine) to a VMWare or Microsoft file. All well and good, but, obviously this would require; enough free space in the virtual machine to create the new disk image, significant time because virtual machines are still slower than native machines and some means of copying the new virtual disk from the guest to the host which means re-installing Parallels 8 tools. Lot’s of time, several reboots and considerable effort. According to Virtualbox, it can use Parallels .hdd drives. My first problem was finding the Windows.hdd file. In my Virtual machines directory, I only had a Windows.pvm file, sized at about 20GB. Was this my virtual disk? Virtualbox said no. Of course, on OS X it’s not unusual for something that looks like a file to actually be a Folder (or in this case a Package). Sure enough, right clicking on the Windows.pvm file revealed a “Show Package Contents” entry. Clicking through revealed a Windows.hdd file. Fantastic I thought. Unfortunately, when using a file dialog to choose a file, you can’t drill down to the contents of Packages so, I had to copy all 20GB of the Windows.hdd file out of the Package. Returning to Virtualbox, I pointed my virtual machine at the Windows.hdd and… error. It still didn’t work. Perhaps Parallels 8 .hdd files have changed since the version that Virtualbox is supposed to support. Back to Google for a few hours searching but to no avail. Then, suddenly I had a thought. What if, the Windows.hdd is also a folder. Right click, once again revealed a “Show Package Contents” menu item and choosing that took me down one more level into yet another folder. This new folder contained yet another Windows.hdd file which was zero bytes in size. However, more interestingly there was a Windows..hdd.o.{long guid type string}.hds file in this folder sized at 20GB. Once again, I copied a 20Gb file out of the nested Packages and into my Virtualbox virtual machine directory. This time, I pointed Virtualbox at the .hds file and Windows started fine. All that I did to tidy up was shutdown Virtualbox, rename the long GUID based file to a more manageable window.hdd and re-attach it to my Windows virtual machine. Finally, I had successfully migrated from Parallels 8 to Virtualbox and all that was actually needed was to copy and optionally rename a single file. And yes, my thoughts on performance were correct. When Parallels 8 was running the virtual machine (in a window, none of the fancy integration stuff) it was using a total of 1.5GB of memory for a 768MB Memory machine. Virtualbox, running the same machine takes a fraction under 1GB of memory. More importantly, I can now have my virtual Windows machine running and still use other applications on my Macbook. #blog

Google+: View post on Google+