VirtualBox lets users install operating systems inside their current OS. The main OS is the Host, and the other OS's are called the Guest. Users can run many systems at one time with VirtualBox, in fact allot of servers run hundreds of VirtualBox images at one time, all day everyday.
To get started using VirtualBox Windows can go to VirtualBox Downloads and install the right package for their system. Linux users can install VirtualBox-OSE (Open Source Edition) from their respective package manager.
To add the oracle maintained repository and install VirtualBox using a Debian based Linux distro (Ubuntu, Mint), copy paste this command into a terminal:
sudo sh -c "echo 'deb http://download.virtualbox.org/virtualbox/debian '$(lsb_release -cs)' contrib non-free' > /etc/apt/sources.list.d/virtualbox.list" && wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add - && sudo apt-get update && sudo apt-get install virtualbox-4.1 dkms
After installing VirtualBox you'll want to install an OS (operating system) to it. I recommend a lightweight Linux distro such as Xbuntu or Lubuntu. Download either of those ISOs and then launch VirtualBox, click new and point it to the ISO. After that it's just a matter of following all the on screen prompts to get the system up and running.
When testing out software in the VirtualBox you'll probably want to open it up to the internet. Was having an issue with this, as every time it was tested to see if it was broadcasting on the internet there was an error, which ended up being a loop back error in the router ( trying to go out to the net and back in).
What did work for me was changing the adapter setting on the machine to Bridged Adapter then go into the setting of the guest OS and change the IP to a static IP. Open up the ports on the router and the VM should be broadcasting. Again I had an issue and couldn't test that it was working from home, had to actually leave and go to another location to verify it worked (router loopback error).
It's kinda hard to remember the IP addresses, that and they are constantly changing unless it is a static IP, so to access the VM use NO-IP. They provide 3 free host names for your IP addressing needs, making it much easier to share your VM on the internet.