21.6. 以 FreeBSD 作為主端安裝 VirtualBox

VirtualBox 是一套積極開發、完整的虛擬化套件,適用大多數作業系統,包含 Windows®, Mac OS®, Linux® 與 FreeBSD,它同樣能夠執行類 Windows® 或 UNIX® 的客端系統。它是以開源軟體的方式發佈,但閉源元件可獨立在擴充包中使用,這些元件包含對 USB 2.0 裝置的支援。更多資訊可在 VirtualBox wiki 的 Downloads 頁面。目前,這些擴充套件並不支援 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 can be configured to pass USB devices through to the guest operating system. The host controller of the OSE version is limited to emulating USB 1.1 devices until the extension pack supporting USB 2.0 and 3.0 devices becomes available on FreeBSD.

For VirtualBox to be aware of USB devices attached to the machine, the user needs to be a member of the operator group.

# pw groupmod operator -m yourusername

Then, add the following to /etc/devfs.rules, or create this file if it does not exist yet:

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

To load these new rules, add the following to /etc/rc.conf:

devfs_system_ruleset="system"

Then, restart devfs:

# 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 方面疑問,請先閱讀 FreeBSD 相關文件,如不能解決的話,再洽詢 <questions@FreeBSD.org>。

關於本文件的問題,請洽詢 <doc@FreeBSD.org>。