virtualbox
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
virtualbox [2010/01/13 11:20] – 172.26.0.166 | virtualbox [2010/07/04 20:05] – 172.26.14.218 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ===== VirtualBox | + | ====== VirtualBox ====== |
- | ==== Commonly-used commands | + | VirtualBox is a free/opensource Hypervisor from Sun Microsystems. |
- | To change between "not attached", | + | |
- | < | + | |
- | Set the boot order: | + | |
- | < | + | |
- | Add a shared folder: | + | |
- | < | + | |
- | Acpi Vm: | + | |
- | < | + | |
- | Change rdp address: | + | |
- | < | + | |
- | Change the Authentication type: | + | |
- | < | + | |
- | **Note**: option " | + | |
- | < | + | |
- | Change rdp port: | + | |
- | < | + | |
- | List all VMs in the server: | + | |
- | < | + | |
- | List all running VMs: | + | |
- | < | + | |
- | List guest properties: | + | |
- | < | + | |
- | Note: All the guest parameters(configuration) are in < | + | |
+ | * [[http:// | ||
+ | * [[http:// | ||
===== Create a VM ===== | ===== Create a VM ===== | ||
Copy an ISO to your home directory: | Copy an ISO to your home directory: | ||
- | < | + | < |
- | * SSH to VM server: 172.26.0.205 | + | * SSH to VM server: 172.26.0.200 |
- | < | + | < |
* start the virtualbox application | * start the virtualbox application | ||
< | < | ||
- | * Follow the wizzard | + | * Follow the wizard |
- Base Memory: less than 512 MB | - Base Memory: less than 512 MB | ||
- Network : NAT | - Network : NAT | ||
- | - Harddisk | + | - 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: | ||
+ | < | ||
+ | Each and every VM using bridged networking must use this command. | ||
+ | |||
+ | As of VirtualBox 3.1.2 this is still a [[http:// | ||
==== Port Forwarding ==== | ==== Port Forwarding ==== | ||
- | If your guest OS is using NAT for networking you will need to enable port forwarding. | + | If your guest OS is using NAT for networking |
< | < | ||
$ VBoxManage setextradata Ubuntu " | $ VBoxManage setextradata Ubuntu " | ||
- | $ VBoxManage setextradata Ubuntu " | + | $ VBoxManage setextradata Ubuntu " |
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: | ||
- | < | + | < |
- | + | ===== Updating | |
- | === Upgrading | + | 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 ('' |
< | < | ||
VirtualBox Command Line Management Interface Version 3.0.8 | VirtualBox Command Line Management Interface Version 3.0.8 | ||
Line 55: | Line 42: | ||
[jmagochi@biovbox ~]$ sudo / | [jmagochi@biovbox ~]$ sudo / | ||
- | $ wget http:// | + | $ yum install |
- | $ ./ | + | |
- | $ / | + | |
</ | </ | ||
+ | ===== Commonly-used commands ===== | ||
+ | ==== List your VMs ==== | ||
+ | < | ||
+ | ==== List your running VMs ==== | ||
+ | < | ||
+ | ==== Autostart VMs at host boot ==== | ||
+ | ---- | ||
+ | |||
+ | How do I get my VirtualBox Guest VM’s to start and stop when the host system reboots, shutdown, or starts. | ||
+ | |||
+ | Solution / Answer: | ||
+ | |||
+ | Create an init.d script so that VirtualBox Guest VM are controlled as a system service. | ||
+ | VBoxTool http:// | ||
+ | |||
+ | http:// | ||
+ | |||
+ | ---- | ||
+ | Create Config File for vboxcontrol service script | ||
+ | |||
+ | < | ||
+ | < | ||
+ | The file “machines_enabled” located in “/ | ||
+ | |||
+ | To get a list of your current Guest VM names execute the following command and notice the name is in ” “: | ||
+ | < | ||
+ | $ VBoxManage list vms | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | Add Guest VM’s to “machines_enabled” include one VM name per line | ||
+ | < | ||
+ | # vi / | ||
+ | Centos_HDLES_x86_1 | ||
+ | Centos_HDLES_x86_3 | ||
+ | Centos_HDLES_LAMP</ | ||
+ | Add VirtualBox VM Service script | ||
+ | |||
+ | Create new init.d service script file and give execute permissions | ||
- | ===== Expanding a Virtual Disk ===== | + | < |
- | There is no way to expand a VDI. What you have to do is create a new VDI, boot the virtual machine to a live cd, and copy over the filesystem (either via '' | + | < |
+ | Copy the following code into file “/etc/init.d/ | ||
- | Create new VDI | + | <code bash> |
+ | #! /bin/sh | ||
+ | # vboxcontrol | ||
+ | # | ||
+ | # chkconfig: 345 98 02 | ||
+ | # description: | ||
+ | # processname: | ||
+ | # | ||
+ | # pidfile: / | ||
+ | # | ||
+ | ### BEGIN INIT INFO | ||
+ | # | ||
+ | ### END INIT INFO | ||
+ | # | ||
+ | # Version 20090301 by Kevin Swanson < | ||
+ | # Version 2008051100 by Jochem Kossen < | ||
+ | # http:// | ||
+ | # | ||
+ | # Released in the public domain | ||
+ | # | ||
+ | # This file came with a README file containing the instructions on how | ||
+ | # to use this script. | ||
+ | # | ||
- | Attach to virtual machine and boot with System Rescue CD | + | # Source function library. |
+ | if [ -f / | ||
+ | . / | ||
+ | elif [ -f / | ||
+ | . / | ||
+ | else | ||
+ | exit 1 | ||
+ | fi | ||
- | Create two partitions with fdisk/cfdisk/parted, whatever: | + | ################################################################################ |
- | * 1: 100 MB, boot, type "Linux" | + | # INITIAL CONFIGURATION |
- | * 2: 30 GB, type "Linux LVM" | + | VBOXDIR=" |
+ | VM_USER="vmadmin" | ||
+ | USE_NAT="no" | ||
- | Format the boot partition as ext3 | + | export PATH=" |
- | ==== LVM setup ==== | + | if [ -f $VBOXDIR/ |
+ | . $VBOXDIR/ | ||
+ | fi | ||
- | Create Physical Volume from device: | + | SU="su $VM_USER -c" |
- | < | + | VBOXMANAGE=" |
- | Create Volume Group from PV: | + | ################################################################################ |
- | < | + | # FUNCTIONS |
- | Create Logical Volumes in VG: | + | # Determine if USE_NAT is set to " |
- | < | + | use_nat() { |
- | lvcreate -L512M -nLogVol01 VolGroup01</ | + | if [ " |
+ | return `true` | ||
+ | else | ||
+ | return `false` | ||
+ | fi | ||
+ | } | ||
- | Format the new partitions: | + | log_failure_msg() { |
- | < | + | echo $1 |
- | < | + | } |
- | <note important> | + | log_action_msg() { |
+ | echo $1 | ||
+ | } | ||
- | Mount both root partitions: | + | # Check for running machines every few seconds; return when all machines are |
- | < | + | # down |
- | mount / | + | wait_for_closing_machines() { |
+ | RUNNING_MACHINES=`$SU " | ||
+ | if [ $RUNNING_MACHINES != 0 ]; then | ||
+ | sleep 5 | ||
+ | wait_for_closing_machines | ||
+ | fi | ||
+ | } | ||
- | Copy everything over: | + | ################################################################################ |
- | < | + | # RUN |
+ | case " | ||
+ | start) | ||
+ | if [ -f /etc/virtualbox/machines_enabled ]; then | ||
- | Mount both boot partitions: | + | cat / |
- | < | + | log_action_msg " |
- | mount /dev/sda1 /mnt/oldboot</ | + | $SU " |
+ | RETVAL=$? | ||
+ | done | ||
+ | touch /var/lock/subsys/vboxcontrol | ||
+ | fi | ||
+ | ;; | ||
+ | stop) | ||
+ | # NOTE: this stops all running VM's. Not just the ones listed in the | ||
+ | # config | ||
+ | $SU " | ||
+ | log_action_msg " | ||
+ | $SU " | ||
+ | done | ||
+ | rm -f /var/lock/subsys/vboxcontrol | ||
+ | wait_for_closing_machines | ||
- | Copy everything over: | + | ;; |
- | < | + | start-vm) |
+ | log_action_msg " | ||
+ | $SU " | ||
+ | ;; | ||
+ | stop-vm) | ||
+ | log_action_msg " | ||
+ | $SU " | ||
+ | ;; | ||
+ | poweroff-vm) | ||
+ | log_action_msg " | ||
+ | $SU " | ||
+ | ;; | ||
+ | status) | ||
+ | echo "The following virtual machines are currently running:" | ||
+ | $SU " | ||
+ | echo -n "$VM (" | ||
+ | echo -n `$SU " | ||
+ | echo ' | ||
+ | done | ||
+ | ;; | ||
+ | *) | ||
+ | echo " | ||
+ | name>|stop-vm <VM name> | ||
+ | exit 3 | ||
+ | esac | ||
- | Force SElinux to relabel all files on boot (or else SElinux will deny you to log in) | + | exit 0 |
- | < | + | </ |
+ | Add vboxcontrol service to chkconfig registry | ||
- | Unmount all mounted logical volumes | + | < |
+ | Tell chkconfig to create symlinks for runlevels and activate service vboxcontrol | ||
- | Install GRUB on the new VDI | + | < |
- | < | + | |
- | > root (hd0,0) | + | |
- | > setup (hd0)</ | + | |
- | ==== Renaming the new volume group==== | ||
- | Deativate all logical volumes | ||
- | < | ||
- | Rename old volume group | ||
- | < | ||
- | Rename new volume group | ||
- | < |