# VirtualBox hypervisor driver

The libvirt VirtualBox driver can manage any VirtualBox version from version 2.2 onwards.

## Project Links

- The VirtualBox hypervisor

## Connections to VirtualBox driver

The libvirt VirtualBox driver provides per-user drivers (the "session" instance). The uri of the driver protocol is "vbox". Some example connection URIs for the driver are:

    vbox:///session                      (local access to per-user instance)
    vbox+unix:///session                 (local access to per-user instance)
    vbox+tcp://user@example.com/session  (remote access, SASl/Kerberos)
    vbox+ssh://user@example.com/session  (remote access, SSH tunnelled)

## Example domain XML config

    <domain type='vbox'>
      <name>vbox</name>
      <uuid>4dab22b31d52d8f32516782e98ab3fa0</uuid>

      <os>
        <type>hvm</type>
        <boot dev='cdrom'/>
        <boot dev='hd'/>
        <boot dev='fd'/>
        <boot dev='network'/>
      </os>

      <memory>654321</memory>
      <vcpu>1</vcpu>

      <features>
        <pae/>
        <acpi/>
        <apic/>
      </features>

      <devices>
        <disk type='file' device='cdrom'>
          <source file='/home/user/Downloads/slax-6.0.9.iso'/>
          <target dev='hdc'/>
          <readonly/>
        </disk>

        <disk type='file' device='disk'>
          <source file='/home/user/tmp/vbox.vdi'/>
          <target dev='hdd'/>
        </disk>

        <disk type='file' device='floppy'>
          <source file='/home/user/tmp/WIN98C.IMG'/>
          <target dev='fda'/>
        </disk>

        <filesystem type='mount'>
          <source dir='/home/user/stuff'/>
          <target dir='my-shared-folder'/>
        </filesystem>

        <!--BRIDGE-->
        <interface type='bridge'>
          <source bridge='eth0'/>
          <mac address='00:16:3e:5d:c7:9e'/>
          <model type='am79c973'/>
        </interface>

        <!--NAT-->
        <interface type='user'>
          <mac address='56:16:3e:5d:c7:9e'/>
          <model type='82540eM'/>
        </interface>

        <sound model='sb16'/>

        <parallel type='dev'>
          <source path='/dev/pts/1'/>
          <target port='0'/>
        </parallel>

        <parallel type='dev'>
          <source path='/dev/pts/2'/>
          <target port='1'/>
        </parallel>

        <serial type="dev">
          <source path="/dev/ttyS0"/>
          <target port="0"/>
        </serial>

        <serial type="pipe">
          <source path="/tmp/serial.txt"/>
          <target port="1"/>
        </serial>

        <hostdev mode='subsystem' type='usb'>
          <source>
            <vendor id='0x1234'/>
            <product id='0xbeef'/>
          </source>
        </hostdev>

        <hostdev mode='subsystem' type='usb'>
          <source>
            <vendor id='0x4321'/>
            <product id='0xfeeb'/>
          </source>
        </hostdev>
      </devices>
    </domain>