# VirtualBox hypervisor driver

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

## 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>

            <!--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>