Innotek's GPL-licensed Virtualbox software lets you create a virtual operating environment inside your PC's real operating system. I've been using Virtualbox for several months now on a 32-bit laptop running Ubuntu 7.04, and I've been impressed with the software. However, my main PC at home utilizes a 64-bit version of Ubuntu 7.04 Feisty Fawn, and Virtualbox didn't support 64-bit OSes -- until this month. Now that I've tried it, I'm happy to report it works just as well as its 32-bit sibling.
I like to use virtualization to set up testing environment to run a live CD Linux distribution without powering off my primary OS. This makes things such as taking screenshots of the OS easier. In addition, I've been eager to try out several new releases of popular Linux distributions, such as Mandriva and Fedora.
I tested Virtualbox on a AMD Sempron 2800+ desktop with 1GB of RAM and an Nvidia GeForce 7300GS video adapter. For the installation, I chose to follow the method from the official site to install Virtualbox under Ubuntu via APT using the following commands.
First I added the Innotek repository to my sources.list file with the command
sudo su -c 'echo deb http://www.virtualbox.org/debian feisty non-free >> /etc/apt/sources.list'
Next, I imported a security key to validate the downloaded application files:
wget -q http://www.virtualbox.org/debian/innotek.asc -O- | sudo apt-key add -
And finally, I installed the program itself:
sudo apt-get update && sudo apt-get install virtualbox
The only downside regarding installation was that while the installer was nice enough to create the vboxusers user group for me, I had to manually add my username to it. Membership in the vboxusers group is required to give a user the necessary permissions to run Virtualbox.
Putting it to the test
I first tested the latest release of Virtualbox with Mandriva 2007 Spring and Fedora 7, both of which have live GNOME installer CDs. Using Virtualbox's New Virtual Machine Wizard, I created virtual machines for each OS. Both were set up with 256MB of virtual RAM and a 5GB virtual hard disk. I chose to use dynamically expanding disks, which start out at 0MB, and can grow in size with the needs of the guest operating system.
Since Virtualbox supports the mounting of ISO images directly without the need of burning them to an actual CD, booting into the Mandriva and Fedora live CDs was effortless, and installing each went just as quickly as if they were being installed on a physical PC. One minor annoyance was that there didn't seem to be any emulation for the installer's request to eject the CD. When the virtual machine rebooted from Fedora's installation, it booted right back into the installer. I had to manually turn off the virtual machine and disable its mounting of the ISO image in order to boot into the installed OS. Since this method of installing Linux is typical these days, Innotek should come up with a way of detaching the ISO automatically upon the request of the installer.
Both Mandriva and Fedora ran at close to if not exactly at the same speed as if I installed the operating system onto a physical disk. To date, no other virtualization technology has ran this well for me.
Since my PC has a video card well over the minimum requirements to run a 3-D accelerated desktop such as Compiz, I was disappointed that Mandriva's 3-D effects weren't available inside Virtualbox. However, hardware-accelerated graphics is something that no virtual machine software I've tested has been capable of handling, and Virtualbox is no exception.
With Fedora, I had to fix an annoying bug with the display resolution. Fedora would not scale to a resolution above 800x600, even though it reported it was set to 1024x768. After fighting with the xorg configuration file, I decided to try out Virtualbox's Guest Additions (extra software drivers for the guest operating system). I had to install the source package for the running kernel and the development tools in order to utilize this feature, but it was well worth it, as it fixed the problem. In fact, installing the Guest Additions opened the door to new features, such as being able to use the mouse without the guest operating system capturing complete control over it.
Another interesting feature with Virtualbox is that it supports the Remote Desktop Protocol (RDP). This means that you can set up a virtual machine on your network and connect to it through other computers. I find this useful; I set up a "virtual server," hide it on another desktop, and have it automate tasks for me without taking up any room on my screen.
Other than a few minor annoyances, everything else worked fine with each OS. Browsing the Internet, checking email, and playing games without 3-D acceleration worked as expected. Each OS ran just about as fast as it would if installed on a physical PC.
Virtualbox is amazing. It may not have as many features as solutions such as VMware, but it doesn't have the high price tag either. If all you're looking for is a personal virtualization application with a basic feature set, Virtualbox is useful.
Jeremy LaCroix is a technology hobbyist and IT technician, and writes in his spare time.