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
Last revisionBoth sides next revision
virtualbox [2010/01/20 07:59] 172.26.0.166virtualbox [2011/06/03 13:03] aorth
Line 1: Line 1:
-===== VirtualBox tips/tricks ===== +====== 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.
  
-  * VirtualBox homepage: http://www.virtualbox.org+  * [[http://www.virtualbox.org|VirtualBox homepage]] 
 +  * [[http://ubuntuforums.org/showthread.php?t=646613|Tips to optimize Linux guests and hosts]]
  
-==== Commonly-used commands ==== +====== Tips ====== 
-List your VMs: +===== Optimal settings for Linux guests ===== 
-<code>VBoxManage list vms</code> +Guest operating systems are not like host operating systems.  These settings are generally regarded as improving the performance of guest virtual machines.
-List all running VMs: +
-<code>VBoxManage list runningvms </code>+
  
-===== Create a VM ===== +  * Set the IO scheduler to ''noop''
-Copy an ISO to your home directory+    * Edit the grub command line to set the default IO scheduler, usually in ///etc/default/grub//: ''elevator=noop'' 
-<code>$scp <dist>.iso <username>@172.26.0.205:~/</code> +  * Install guest additions (VirtualBox or VMware) 
-  * SSH to VM server172.26.0.205 +  * Run virtual machine-specific kernel
-<code>$ ssh <username>@172.26.0.205</code> +    * Ubuntu: linux-image-virtual 
-  * start the virtualbox application +  * Mount filesystems with ''noatime'' in ///etc/fstab//
-<code>VirtualBox</code> +
-  * Follow the wizard to create VM with the following properties+
-      Base Memory: less than 512 MB +
-      Network : NAT +
-      - 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>
 +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 [[http://www.virtualbox.org/ticket/2852|known issue]].
  
 ==== Port Forwarding ==== ==== Port Forwarding ====
Line 33: Line 29:
 <code>$ VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2223 <code>$ 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/GuestPort" 22
-$ VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP+$ VBoxManage setextradata Ubuntu "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP</code>
 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 ==== +===== Commonly-used commands ===== 
-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. +==== List your VMs ==== 
-<file>[jmagochi@biovbox ~]$ VBoxManage controlvm CentOS savestate +<code>$ VBoxManage list vms</code> 
-VirtualBox Command Line Management Interface Version 3.0.8 +==== List your running VMs ==== 
-(C) 2005-2009 Sun Microsystems, Inc. +<code>$ VBoxManage list runningvms </code>
-All rights reserved.+
  
-0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100% +===== Updating VirtualBox ===== 
-[jmagochi@biovbox ~]$ sudo /etc/init.d/vboxdrv stop+=== 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:
  
-$ yum install virtualbox-3.1 +<code># su - jmagochi 
-</file>+VBoxManage controlvm nobu savestate 
 +$ VBoxManage controlvm lims savestate 
 +$ exit 
 +# su - aorth 
 +$ VBoxManage controlvm b0237553-9653-4461-bd0e-d4d316c16d4f savestate 
 +$ exit</code> 
 +=== Update VirtualBox === 
 +<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>