
My good friend Edwin suggested to me about trying VirtualBox, a virtual machine software to run multiple OS on one computer. Before this I only had experience with VMware workstation, but that was a while ago and I don’t mind trying something new.
On my Windows 7 laptop, the installation was straightforward. It takes up 116MB by itself on my C drive.
Then I went on to download ubuntu 10.10. At first I didn’t know which edition to download, then I figured that Ubuntu server is designed to be host machines and desktops are better suited as guests in a VM setup. Next was simple – I simply put the desktop edition ISO on the USB key and clicked on the new button.

VirtualBox Manager Screen

It can't be simpler.
I assigned 8GB of hard drive space and 1GB of RAM to the ubuntu VM. I didn’t have to wait too long before I find a Ubuntu Desktop running.
From this point on, I encountered two problems (not big ones, just ignorance of me).
1. Screen resolution aren’t detected automatically

Guest Addition option
Initially, it was running with a maximum resolution at 800×600. That made life a bit difficult. I googled it for help but most fixes are written for Ubuntu versions 7, 8, and 9, and requires setting up a xorg.conf under etc/x11/ (yes, a little complicated).
And then I read somewhere about installing Guest Addition to enable shared folders between host and guest. It took me a while to find it – it was actually at the menu bar of the guest machine window, see this screenshot on the left.
Installing Guest Addition gives me access to sharing folders, and it also detected my screen resolution, and I was able to run the ubuntu gnome desktop at full screen. (Sharing folders, on the other hand, turned out to be less than useful for me.)
2. Access the Guest from Host via IP

Network Adaptors options.
So, the whole purpose of this VM is to give me a machine for development on-demand without sacrificing permanent resources on my host. In other words, there’s a need for me to access the guest machine on port 80 and FTP on 22 if I want to develop websites on it.
This is no doubt very simple for some people, but I needed help from my friend to solve this. (I’m not very good with networking.)
Port forwarding is solution, and the most common suggestion is to forward the host’s default 127.0.0.1 port 8888 to the guest’s IP on port 80. What I had trouble was to find out the guest’s IP.

Port forward settings.
Here’s how. Summon up the network adaptor dialog box of the guest (as shown below). Adaptor 1 should already be set to NAT. Just click on Port forwarding to see the next screen.
Since I needed port 80 for HTTP and 22 for SFTP, those are the two ports I set to forward. Host ports 8888 and 2222 are just numbers that I can remember, so I set it to those.
My guest machine’s ethernet IP is 10.0.2.15. It might be different from yours.
Overall
I am very glad about the virtualbox and ubuntu combination. VirtualBox is very friendly and easy to setup. It is also easier to set up compared to VMware workstation I had done in the past. I don’t have a direct comparison, however, between this and the latest VMware software.
Ubuntu is a blast! With only 1GB of RAM I have assigned to, it’s pretty dang fast. For me, it’s a nice departure from Windows from time to time. Microsoft better watch out before Linux creeps over…
I am skipping the steps to setup ubuntu as a web server. There are plenty of instructions on the web as to how to do this. It’s not hard using Ubuntu’s Synaptic Package Manager.
One final thought is about ubuntu’s user interface. Although it’s sufficient, it doesn’t provide the option to change owner or groups of files or folders, something Fedora Core or other Linux distros have managed to offer. There’re pros and cons in offering that, but it still gives me a weird impression that I still had to summon up the terminal to do some chown and chgrp.