Update the VirtualBox sections with new info:

- FreeBSD Guest Additions
- Guest CD/DVD support
- Guest USB support

The information comes mostly from the FreeBSD wiki and was converted for the
Documentation Project by Eric Newberry as part of the Google Code-in contest.
Eric's mentors were beat and decke. Thank you all for this nice work!

PR:		docs/162961
Authored by:	Eric Newberry
Submitted by:	beat
Reviewed by:	beat, wblock
This commit is contained in:
Manolis Kiagias 2011-12-02 17:22:01 +00:00
parent 61161de106
commit b6153f14ea
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=37989

View file

@ -969,6 +969,117 @@ xenbr1 8000.feffffffffff no vif0.1
</sect3>
</sect2>
<sect2 id="virtualization-guest-virtualbox-guest-additions">
<title>&virtualbox; Guest Additions on a &os; Guest</title>
<para>The <application>&virtualbox;</application> guest additions
provide support for:</para>
<itemizedlist>
<listitem>
<para>Clipboard sharing</para>
</listitem>
<listitem>
<para>Mouse pointer integration</para>
</listitem>
<listitem>
<para>Host time synchronization</para>
</listitem>
<listitem>
<para>Window scaling</para>
</listitem>
<listitem>
<para>Seamless mode</para>
</listitem>
</itemizedlist>
<note>
<para>The following commands are run in the &os; guest.</para>
</note>
<para>First, install the <filename
role="package">emulators/virtualbox-ose-additions</filename>
package in the &os; guest.</para>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/virtualbox-ose-additions && make install clean</userinput></screen>
<para>Add these lines to <filename>/etc/rc.conf</filename>:</para>
<programlisting>vboxguest_enable="YES"
vboxservice_enable="YES"</programlisting>
<para>If &man.ntpd.8; or &man.ntpdate.8; will be used, host time
synchronization should be disabled:</para>
<programlisting>vboxservice_flags="--disable-timesync"</programlisting>
<para>The <literal>vboxvideo_drv</literal> should be recognized by
<command>Xorg -configure</command>. If not, modify
<filename>xorg.conf</filename> for the
<application>&virtualbox;</application> video card:</para>
<programlisting>Section "Device"
### Available Driver options are:-
### Values: &lt;i&gt;: integer, &lt;f&gt;: float, &lt;bool&gt;: "True"/"False",
### &lt;string&gt;: "String", &lt;freq&gt;: "&lt;f&gt; Hz/kHz/MHz"
### [arg]: arg optional
Identifier "Card0"
Driver "vboxvideo"
VendorName "InnoTek Systemberatung GmbH"
BoardName "VirtualBox Graphics Adapter"
BusID "PCI:0:2:0"
EndSection</programlisting>
<para>To use <literal>vboxmouse_drv</literal>, adjust the mouse
section in your <filename>xorg.conf</filename>:</para>
<programlisting>Section "InputDevice"
Identifier "Mouse0"
Driver "vboxmouse"
EndSection</programlisting>
<para><acronym>HAL</acronym> users should create this file at
<filename>/usr/local/etc/hal/fdi/policy/90-vboxguest.fdi</filename>
or copy it from <filename>/usr/local/share/hal/fdi/policy/10osvendor/90-vboxguest.fdi</filename>:</para>
<programlisting>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;!--
# Sun VirtualBox
# Hal driver description for the vboxmouse driver
# $Id: chapter.sgml,v 1.26 2011-12-02 17:22:01 manolis Exp $
Copyright (C) 2008-2009 Sun Microsystems, Inc.
This file is part of VirtualBox Open Source Edition (OSE, as
available from http://www.virtualbox.org. This file is free software;
you can redistribute it and/or modify it under the terms of the GNU
General Public License (GPL) as published by the Free Software
Foundation, in version 2 as it comes in the "COPYING" file of the
VirtualBox OSE distribution. VirtualBox OSE is distributed in the
hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
Clara, CA 95054 USA or visit http://www.sun.com if you need
additional information or have any questions.
--&gt;
&lt;deviceinfo version="0.2"&gt;
&lt;device&gt;
&lt;match key="info.subsystem" string="pci"&gt;
&lt;match key="info.product" string="VirtualBox guest Service"&gt;
&lt;append key="info.capabilities" type="strlist"&gt;input&lt;/append&gt;
&lt;append key="info.capabilities" type="strlist"&gt;input.mouse&lt;/append&gt;
&lt;merge key="input.x11_driver" type="string"&gt;vboxmouse&lt;/merge&gt;
&lt;merge key="input.device" type="string"&gt;/dev/vboxguest&lt;/merge&gt;
&lt;/match&gt;
&lt;/match&gt;
&lt;/device&gt;
&lt;/deviceinfo&gt;</programlisting>
</sect2>
</sect1>
<sect1 id="virtualization-host">
@ -1000,8 +1111,10 @@ xenbr1 8000.feffffffffff no vif0.1
<title>Installing &virtualbox;</title>
<para><application>&virtualbox;</application> is available as a &os; port
in <filename role="package">emulators/virtualbox-ose</filename>, and
may be installed using the following commands:</para>
in <filename role="package">emulators/virtualbox-ose</filename>.
As &virtualbox; is very actively developed, make sure your ports
tree is up to date before installing. Install using these
commands:</para>
<screen>&prompt.root; <userinput>cd /usr/ports/emulators/virtualbox-ose</userinput>
&prompt.root; <userinput>make install clean</userinput></screen>
@ -1028,37 +1141,14 @@ xenbr1 8000.feffffffffff no vif0.1
<programlisting>vboxdrv_load="YES"</programlisting>
<para>Versions of <application>&virtualbox;</application> prior to 3.1.2
require the <filename class="directory">proc</filename> file system
to be mounted. This is not needed in recent versions, which utilize
the functions provided by the &man.sysctl.3; library.</para>
<para>To use the kernel modules that allow bridged or host-only
networking, add the following to <filename>/etc/rc.conf</filename>
and reboot the computer:</para>
<para>When using an older version of the port, follow the instructions
below to make sure <filename class="directory">proc</filename> is
mounted properly:</para>
<screen>&prompt.root; <userinput>mount -t procfs proc /proc</userinput></screen>
<para>To allow this setting to persist reboots, the following line
is needed in <filename>/etc/fstab</filename>:</para>
<programlisting>proc /proc procfs rw 0 0</programlisting>
<note>
<para>If an error message similar to the following is observed
when <application>&virtualbox;</application> is run from
the terminal:</para>
<screen>VirtualBox: supR3HardenedExecDir: couldn't read "", errno=2 cchLink=-1</screen>
<para>The most likely culprit will be the <filename
class="directory">proc</filename> file system. Please use the
<command>mount</command> command to check whether it is mounted
properly.</para>
</note>
<programlisting>vboxnet_enable="YES"</programlisting>
<para>The <groupname>vboxusers</groupname> group is created during
the installation of <application>&virtualbox;</application>.
installation of <application>&virtualbox;</application>.
All users that need access to <application>&virtualbox;</application>
will have to be added as members of this group.
The <command>pw</command> command may be used to add new
@ -1066,8 +1156,23 @@ xenbr1 8000.feffffffffff no vif0.1
<screen>&prompt.root; <userinput>pw groupmod vboxusers -m <replaceable>yourusername</replaceable></userinput></screen>
<para>The default permissions for <filename
class="devicefile">/dev/vboxnetctl</filename> are restrictive and
need to be changed for bridged networking.</para>
<para>To test it temporarily:</para>
<screen>&prompt.root; <userinput>chown root:vboxusers /dev/vboxnetctl</userinput>
&prompt.root; <userinput>chmod 0660 /dev/vboxnetctl</userinput></screen>
<para>To make the permissions change permanent, add these
lines to <filename>/etc/devfs.conf</filename>:
<programlisting>own vboxnetctl root:vboxusers
perm vboxnetctl 0660</programlisting>
<para>To launch <application>&virtualbox;</application>, either select
the <guimenuitem>Sun VirtualBox</guimenuitem> item from your
the <guimenuitem>Sun VirtualBox</guimenuitem> item from the
graphic environment's menu, or type the following in a
terminal:</para>
@ -1081,6 +1186,71 @@ xenbr1 8000.feffffffffff no vif0.1
visit the relevant page in the &os; wiki, at <ulink
url="http://wiki.FreeBSD.org/VirtualBox"></ulink>.</para>
</sect2>
<sect2 id="virtualization-virtualbox-usb-support">
<title>&virtualbox; USB Support</title>
<note>
<para>These steps require VirtualBox 4.0.0 or later.</para>
</note>
<para>In order to be able to read and write to USB devices, users
need to be members of the operator group:</para>
<screen>&prompt.root; <userinput>pw groupmod operator -m <replaceable>jerry</replaceable></userinput></screen>
<para>Then, add the following to <filename>/etc/devfs.rules</filename>
(create it if it does not exist yet):</para>
<programlisting>[system=10]
add path 'usb/*' mode 0660 group operator</programlisting>
<para>To load these new rules, add the following to
<filename>/etc/rc.conf</filename>:</para>
<programlisting>devfs_system_ruleset="system"</programlisting>
<para>Then, restart devfs:</para>
<screen>&prompt.root; <userinput>/etc/rc.d/devfs restart</userinput></screen>
<para>USB can now be enabled in the guest operating system.
USB devices should be visible in the &virtualbox; preferences.</para>
</sect2>
<sect2 id="virtualization-virtualbox-host-dvd-cd-access">
<title>&virtualbox; Host DVD/CD Access</title>
<para>The <command>atapicam</command> kernel module needs to be loaded
by adding the following line to
<filename>/boot/loader.conf</filename>:</para>
<programlisting>atapicam_load="YES"</programlisting>
<para><acronym>HAL</acronym> needs to run for
<application>&virtualbox;</application> DVD/CD functions to work,
so enable it in <filename>/etc/rc.conf</filename> and start it
(if it is not already running):</para>
<programlisting>hald_enable="YES"</programlisting>
<screen>&prompt.root; <userinput>/usr/local/etc/rc.d/hald start</userinput></screen>
<para>In order for users to be able to use
<application>&virtualbox;</application> DVD/CD functions, they need
access to <filename class="devicefile">/dev/xpt0</filename>,
<filename
class="devicefile">/dev/cd<replaceable>N</replaceable></filename>,
and <filename
class="devicefile">/dev/pass<replaceable>N</replaceable></filename>.
Add the following lines to
<filename>/etc/devfs.conf</filename>:</para>
<programlisting>perm cd0 0600
perm xpt0 0660
perm pass0 0660</programlisting>
</sect2>
<!--
Note: There is no working/end-user ready Xen support for FreeBSD as of 07-2010.
Hide all information regarding Xen under FreeBSD.