User Tools

Site Tools


virtualbox

This is an old revision of the document!


VirtualBox

VirtualBox is a free/opensource Hypervisor from Sun Microsystems. It has performance on par with VMware and is very mature. We have two virtualization servers, biovbox and biovboxtesting.

Create a VM

Copy an ISO to your home directory:

$scp ubuntu-9.04-desktop-i386.iso alan@172.26.0.200:~/
  • SSH to VM server: 172.26.0.200
$ ssh alan@172.26.0.200
  • start the virtualbox application
$ VirtualBox
  • Follow the wizard to create a VM with the following properties:
    1. Base Memory: less than 512 MB
    2. Network : NAT
    3. Hard disk size: less than 30Gb

Networking

Bridged Networking

If your guest is using bridged networking you MUST use this command to allow other users to use the host's physical network card. Make sure your virtual machine is shut down and then run this command:

VBoxManage setextradata MyMachine VBoxInternal/Devices/pcnet/0/LUN#0/Config/RestrictAccess 0

Each and every VM using bridged networking must use this command. If you are seeing errors like VERR_PERMISSION_DENIED regarding the network interface, this is the cause!

As of VirtualBox 3.1.2 this is still a known issue.

Port Forwarding

If your guest OS is using NAT for networking and you want to access services like Apache or SSH, you will need to enable port forwarding. There is no GUI for this in VirtualBox, but you can use VBoxManage setextradata to make the required changes. If you want to SSH to your VM, for example:

$ VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2223
$ VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort" 22
$ VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP

Then you can log in to the VM from your own computer using the port you've forwarded above:

$ ssh -p 2223 username@172.26.0.200

Updating VirtualBox

To update VirtualBox to a new version you must shutdown all the running VMs. You can do this by first looking to see which VMs are running (ps auxw | grep VBox) and then shutting down or saving the state of each one.

[jmagochi@biovbox ~]$ VBoxManage controlvm CentOS savestate
VirtualBox Command Line Management Interface Version 3.0.8
(C) 2005-2009 Sun Microsystems, Inc.
All rights reserved.

0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
[jmagochi@biovbox ~]$ sudo /etc/init.d/vboxdrv stop

$ yum install virtualbox-3.1

Commonly-used commands

List your VMs

$ VBoxManage list vms

List your running VMs

$ VBoxManage list runningvms 

Autostart VMs at host boot

Ubuntu:Debian

VBoxTool currently consist only of a set of scripts. With this scripts, virtual machines of VirtualBox in a Linux headless server can be controlled. Start, stop, save, backup and show status of sessions in batch mode from the command line.

Usage and installation is tested only on Ubuntu. Please report if a specific function is not working in another environment, say OpenSUSE, Fedora, etc.

INSTALLATION

Note. Precede commands with 'sudo' when not operated as root.

* Place the main script script/vboxtool in /usr/local/bin

* Make vboxtool executable:

  chmod +x /usr/local/bin/vboxtool

* Place the init script script/vboxtoolinit in /etc/init.d

* Make vboxtoolinit executable:

  chmod +x /etc/init.d/vboxtoolinit

* Activate the init script vboxtoolinit:

  update-rc.d vboxtoolinit defaults 99 10

* Create a folder /etc/vboxtool. In here, two config files have to be created, see

configuration section below, type 'vboxtool help' for more instructions.

Note. To remove vboxtoolinit from autostart: update-rc.d -f vboxtoolinit remove

CONFIGURATION

Note. Configuration from vboxtool does *not* taking place on *running* sessions, so save or stop all sessions before issueing the autostart command.

* Create /etc/vboxtool/machines.conf:

  <session name>,<VRDP-port>
The VRDP-port enables RDP-clients like rdesktop to connect. It may be left blank.

* Create /etc/vboxtool/vboxtool.conf:

  vbox_user='<user name>'

* Issue the following command:

  vboxtool autostart
VBoxTool will configure sessions (VRDP-port). By now, session(s) should be up and 
running and configured.

* Check if sessions or running, with the assumed vrdp-port:

  vboxtool show 
Show only the running sessions:
  vboxtool showrun

* Check if sessions configured in /etc/vboxtool/machines.conf are be automatically

started at reboot. Reboot your system, check with: vboxtool showrun

UPGRADING FROM 0.2

Sorry for breaking things here, but it's all in the name of naming consistency…

- Config folder is moved from /etc/vbox to /etc/vboxtool. Rename this folder. - Main script 'vbox' is renamed to 'vboxtool'

USAGE

After installation, type 'vboxtool help' for more info.

KNOWN ISSUES

- Backup is not working as expected when using snapshots. When a snapshot is

present, the main vdi file is not copied, even if it's different from 
previous backups. Problem is that once a snapshot is made, the main vdi 
(according to info from 'VBoxManage showvminfo') is pointing to the snapshot 
vdi instead of the expected, chained main vdi in the vdi folder.
(Tracker #2132265)

MORE HELP

- Type: 'vboxtool help' - See http://vboxtool.sourceforge.net for more details.

Fedora :Redhat : CentOS

virtualbox.1266483318.txt.gz · Last modified: 2010/05/22 14:19 (external edit)