User Tools

Site Tools


virtualbox

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
virtualbox [2010/02/17 09:19] 172.26.0.166virtualbox [2011/06/03 12:51] – [Optimal settings for a guest] aorth
Line 1: Line 1:
-===== VirtualBox ===== +====== 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.+VirtualBox is a free, open-source hypervisor from Oracle.  It has performance on par with VMware and is very mature.  We have two virtualization servers which run VirtualBox on top of CentOS, [[biovbox]] and biovboxtest.
  
   * [[http://www.virtualbox.org|VirtualBox homepage]]   * [[http://www.virtualbox.org|VirtualBox homepage]]
-===== Create a VM =====+  * [[http://ubuntuforums.org/showthread.php?t=646613|Tips to optimize Linux guests and hosts]] 
 +====== Create a VM ======
 Copy an ISO to your home directory: Copy an ISO to your home directory:
-<code>$scp ubuntu-9.04-desktop-i386.iso alan@172.26.0.200:~/</code>+<code>$ scp ubuntu-9.04-desktop-i386.iso alan@172.26.0.200:~/</code>
   * SSH to VM server: 172.26.0.200   * SSH to VM server: 172.26.0.200
 <code>$ ssh alan@172.26.0.200</code> <code>$ ssh alan@172.26.0.200</code>
Line 15: Line 16:
       - Hard disk size: less than 30Gb       - Hard disk size: less than 30Gb
  
-===== Networking ===== +====== Networking ====== 
-==== Bridged 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: 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:
 <code>VBoxManage setextradata MyMachine VBoxInternal/Devices/pcnet/0/LUN#0/Config/RestrictAccess 0</code> <code>VBoxManage setextradata MyMachine VBoxInternal/Devices/pcnet/0/LUN#0/Config/RestrictAccess 0</code>
Line 23: Line 24:
 As of VirtualBox 3.1.2 this is still a [[http://www.virtualbox.org/ticket/2852|known issue]]. As of VirtualBox 3.1.2 this is still a [[http://www.virtualbox.org/ticket/2852|known issue]].
  
-==== Port Forwarding ====+===== 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: 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:
Line 31: Line 32:
 Then you can log in to the VM from your own computer using the port you've forwarded above: Then you can log in to the VM from your own computer using the port you've forwarded above:
 <code>$ ssh -p 2223 username@172.26.0.200</code> <code>$ ssh -p 2223 username@172.26.0.200</code>
-===== 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. 
-<file>[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% +====== Commonly-used commands ====== 
-[jmagochi@biovbox ~]$ sudo /etc/init.d/vboxdrv stop +===== List your VMs =====
- +
-$ yum install virtualbox-3.1 +
-</file> +
-===== Commonly-used commands ===== +
-==== List your VMs ====+
 <code>$ VBoxManage list vms</code> <code>$ VBoxManage list vms</code>
-==== List your running VMs ====+===== List your running VMs =====
 <code>$ VBoxManage list runningvms </code> <code>$ VBoxManage list runningvms </code>
-==== Autostart VMs at host boot ==== 
----- 
- 
-Two Methods: 
- 
- 1 VBoxTool http://vboxtool.sourceforge.net 
- 
- 2 Script from http://www.kernelhardware.org/virtualbox-auto-start-vm-centos-fedora-redhat 
- 
-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.+====== Updating VirtualBox ====== 
 +===== Stop any running VMs ===== 
 +Either shut down or "save state" for any running VMs First, find any users who have "headless" VMs: 
 +<code># ps aux | grep -i VBoxHeadless 
 +jmagochi  4939  3.9  3.5 759372 72268 ?        Sl   Oct05 402:13 /usr/lib/virtualbox/VBoxHeadless -s nobu 
 +jmagochi  4991 12.5  3.2 621588 67632 ?        Sl   Oct05 1281:41 /usr/lib/virtualbox/VBoxHeadless -s lims 
 +aorth    18431  9.7  1.7 998940 36160 ?        Sl   Oct11 129:54 /usr/lib/virtualbox/VBoxHeadless -s b0237553-9653-4461-bd0e-d4d316c16d4f -v off</code> 
 +As the user who owns the VM, save the VM's state:
  
-KNOWN ISSUES+<code># su - jmagochi 
 +$ VBoxManage controlvm nobu savestate 
 +$ VBoxManage controlvm lims savestate 
 +$ exit 
 +# su - aorth 
 +$ VBoxManage controlvm b0237553-9653-4461-bd0e-d4d316c16d4f savestate 
 +$ exit</code> 
 +===== Update VirtualBox ===== 
 +==== CentOS ==== 
 +<code># yum update VirtualBox-3.2</code> 
 +===== Resume VMs ===== 
 +<code># su - jmagochi 
 +$ VBoxHeadless -s nobu & 
 +$ VBoxHeadless -s lims & 
 +$ exit 
 +# su - aorth 
 +$ VBoxHeadless -s b0237553-9653-4461-bd0e-d4d316c16d4f -v off &</code>
  
-- Backup is not working as expected when using snapshots. When snapshot is  +===== Mount CD to a running VM ===== 
-  present, the main vdi file is not copiedeven if it's different from  +Attach an ISO to a running VM.  The CD/DVD device is on the Secondary IDE controller (--port 1)and it is the slave device (--device 1). 
-  previous backups. Problem is that once a snapshot is made, the main vdi  +<code>VBoxManage storageattach "Debian 504" --storagectl "IDE Controller" --port 1 --device 1 --type dvddrive --medium /usr/share/virtualbox/VBoxGuestAdditions.iso</code>
-  (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+====== Optimal settings for a guest ======
  
-- Type: 'vboxtool help' +  * Notes about ''divider=10'': [[http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1006427|VMware]], [[http://www.arrfab.net/blog/?p=62|Blog article]] 
-- See http://vboxtool.sourceforge.net for more details.    +  * Set the IO scheduler to ''noop'': 
 +    * Edit the grub command line to set the default IO scheduler, usually in ///etc/default/grub//: ''elevator=noop'' 
 +  * Install guest additions (VirtualBox or VMware) 
 +  * Run a virtual machine-specific kernel: 
 +    * Ubuntu: linux-image-virtual 
 +  * Mount filesystems with ''noatime'' in ///etc/fstab//