21.6. 使用 VirtualBox™ 虚拟机

VirtualBox is an actively developed, complete virtualization package, that is available for most operating systems including Windows®, Mac OS®, Linux® and FreeBSD. It is equally capable of running Windows® or UNIX®-like guests. It is released as open source software, but with closed-source components available in a separate extension pack. These components include support for USB 2.0 devices. More information may be found on the Downloads page of the VirtualBox wiki. Currently, these extensions are not available for FreeBSD.

21.6.1. 安装VirtualBox

VirtualBox可于emulators/virtualbox-ose以FreeBSD套件或Port的方式取得。要安装Port可使用以下指令:

# cd /usr/ports/emulators/virtualbox-ose
# make install clean

在Port的设定菜单中GuestAdditions相关程序是最有用的选项之一,这些程序可在客端操作系统提供数个有用的功能,如鼠标指标整合(允许鼠标在主端与客端之间移动,不需要按特殊快速键来切换)与较快的图像绘图速度,特别是在Windows®的客端系统。Guest additions可在客端系统安装完之后的Devices菜单找到。

还有一些设定需要在VirtualBox第一次启动端做修改,Port会安装一个核心模块在/boot/modules,该模块必须在核心中加载:

# kldload vboxdrv

要确保该模块在重启后会加载,可加入下行到/boot/loader.conf

vboxdrv_load="YES"

要使用可支持桥接或仅限主端(Host-only)的网络,可加入下行到/etc/rc.conf,然后重新启动电脑:

vboxnet_enable="YES"

在安装VirtualBox的过程中会建立vboxusers群组,所有需要存取VirtualBox的使用者均需要加入成为此群组的成员,pw可用来加入新的成员:

# pw groupmod vboxusers -m yourusername

/dev/vboxnetctl的预设权限是受限的,需要更改后才可使用桥接网络:

# chown root:vboxusers /dev/vboxnetctl
# chmod 0660 /dev/vboxnetctl

要永久变更权限,可加入下列几行到/etc/devfs.conf

own     vboxnetctl root:vboxusers
perm    vboxnetctl 0660

要执行VirtualBox,可在Xorg工作阶段输入:

% VirtualBox

要取得更多有关设定与使用VirtualBox的信息,请参考官方站点。供FreeBSD特定的信息与疑难排解操作指示,可参考FreeBSD wiki中相关的页面

21.6.2. VirtualBox™ USB支持

VirtualBox可以被配置为将USB设备映射给来宾操作系统。OSE 版本的主机控制器仅限于模拟 USB 1.1 设备, 直到 FreeBSD VirtualBox 支持 USB 2.0 和 3.0 设备。

对于VirtualBox来说,用户需要成为operator组的成员。

# pw groupmod operator -m yourusername

然后将以下内容添加到/etc/devfs.rules,或者创建此文件 (如果该文件尚不存在):

[system=10]
add path 'usb/*' mode 0660 group operator

要加载这些新规则,请在/etc/rc.conf中添加以下内容:

devfs_system_ruleset="system"

然后启动服务:

# service devfs restart

重新启动登作阶段与VirtualBox来让这些变更生效,且建立必要的USB的过滤器。

21.6.3. VirtualBox™ Host DVD/CD存取

透过共享实体磁碟机可让客端系统能够存取主端系统的DVD/ CD 磁碟机。在VirtualBox™中,这个功能可在虚拟机器设定中的储存(Storage)视窗中设定。若需要,可先建立一个空的IDE CD /DVD装置,然后在跳出的菜单中选择要做为虚拟 CD /DVD磁碟机的主端磁碟机,此时会出现一个标签为Passthrough的核选方块,勾选这个核选方块可让虚拟机器直接使用该硬件,例如,音乐 CD 或刻录机只会在有勾选此选项时能够运作。

VirtualBox DVD/CD功能要能运作需要执行HAL,因此需在/etc/rc.conf中开启,若该服务尚未启动,则启动它:

hald_enable="YES"
# service hald start

为了让使用者能够使用VirtualBox DVD/CD功能,这些使用者需要存取/dev/xpt0/dev/cdN以及/dev/passN,这通常可让这些使用者成为operator的成员来达成。对这些装置的权限必须加入下行到/etc/devfs.conf来修正:

perm cd* 0660
perm xpt0 0660
perm pass* 0660
# service devfs restart

本文档和其它文档可从这里下载: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读 文档,如不能解决再联系 <questions@FreeBSD.org>.

关于本文档的问题请发信联系 <doc@FreeBSD.org>.