I’ve been experimenting lately with virtualization software because I’d like to have a Linux laptop, but I’m not brave enough to abandon Windows (that sure sounds like a sad state of affairs, eh?). I first looked at VMware Workstation, but this product continues to be sold at a high premium over the alternatives. Even though all the reviews I’ve found say this product is best, I can’t justify the cost as science project.
After VMware, I looked at Parallels Workstation. It’s less than 1/3 the cost of VMware’s product and you can take it for a spin before buying. So I did. Parallels installed quite easily and after downloading the latest x86 .iso file from Ubuntu, I was ready to create a virtual machine. The documentation for the software is pretty good and after a bit of trial an error I was able to get a VM built with Ubuntu running inside it. Very nice. Then I hit a snag: the VM couldn’t access the external network interfaces. Not much using having an OS that can’t “see” the world outside my PC. After a couple hours of Googling and scouring Parallels’ forums, I couldn’t find a solution. I tried a half dozen different combinations of Windows Vista and Parallels Workstation configurations, but still no joy. Eventually, I described my problem on Parallels’ support forum under a posting by someone experiencing the same issue. I also sent in an e-mail to Parallels. The silence was deafening. After a few hours, the guy that owned the post I tagged my issue to came back and said he gave up on Parallels. He suggested I give VirtualBox a try.
After waiting a couple more days, I too abandoned Parallels and went for VirtualBox which is an open source project that originated in Germany and had its first public release in Jan’07. A year later in Feb’08, the creator of VirtualBox, innotek GmbH, was acquired by Sun Microsystems. As with Parallels, I found VirtualBox a breeze to install. In addition, building a VM was very straight forward since the VM configuration GUI has a lot in common with Parallels. And the host OS network interfaces were accessible by the guest OS (i.e. I could surf the Internet from inside the VM). Much better.
The biggest problem was screen resolution. The default for Ubuntu seems to be either 800×600 or 640×480, either of which results in the VM consuming a fraction of available real estate on my 13″ laptop LCD. The typical fix for an Ubuntu problem like this is to tweak /etc/X11/xorg.conf via one of a couple different methods (e.g. hand edit with vi or gedit, dpkg-reconfigure, etc.). I tried these, but whenever I then went to Screen Resolution and changed to a higher resolution, the screen would freak out. More reading, more Googling and I learned about a bunch of VirtualBox add-ons called Guest Additions. I found the instructions and installed Guest Additions. Then I tried the xorg.conf tweak again, but with the same annoying blurring screen results.
Frustrated, I gave up for a few days. When I came back, I had resigned myself to the dinky screen. Then I noticed under the “Machine” pull down menu in the frame surrounding my running VM that there was an option called “Auto-resize Guest Display”.

I didn’t recall this being there before I installed Guest Additions, but it sure sounded promising. I clicked the Windows “expand” button in the upper right of the frame, then selected “Auto-resize Guest Display”. VoilĂ ! The resolution for Ubuntu automatically changed inside the VM and expanded to take up all the space in the frame. Very nice. Now I have a 1128×762 display that perfectly fills the screen between the Vista Sidebar and Taskbar. Sweetness.
If you want to do a little experimenting with Linux, but don’t have a spare PC or you want to avoid the dual boot headache, give VirtualBox a try. Who knows if Sun Microsystems will leave it open source, so you may want to try it sooner rather than later.