在無圖形介面的遠端 FreeBSD 伺服器上,透過 Ports 編譯安裝 VirtualBox OSE,並以命令列建立、配置、啟動 Windows Server 2003 虛擬機,實現伺服器虛擬化部署。本文記錄完整編譯參數、核心模組載入、虛擬機建立、儲存控制器、網路模式、VRDE 遠端桌面啟用等關鍵步驟。
portsnap fetch update)。# 編譯核心模組
cd /usr/ports/emulators/virtualbox-ose-kmod && make
# 編譯主程式
cd ../virtualbox-ose && make
# 移除舊版(如有)
pkg_delete virtualbox-*
# 安裝核心模組
cd ../virtualbox-ose-kmod && make install clean
# 安裝主程式
cd ../virtualbox-ose && make install clean
/boot/loader.conf:
vboxdrv_load="YES"
/etc/rc.conf:
vboxnet_enable="YES"
重啟系統(shutdown -r now),確認 kldstat 顯示 vboxdrv.ko 已載入。若載入失敗,需升級 FreeBSD 核心至 8.0+。
# 1. 建立 VM 並註冊
VBoxManage createvm --name Win2003 --register
# 2. 建立虛擬硬碟 (10GB, 動態分配)
VBoxManage createhd --filename Win2003.vdi --size 10000 --variant Standard
# 3. 加入 IDE 控制器
VBoxManage storagectl Win2003 --name "IDE Controller" --add ide --controller PIIX4
# 4. 掛載虛擬硬碟到 IDE Controller Port 0 Device 0
VBoxManage storageattach Win2003 --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium Win2003.vdi
# 5. 掛載 Windows 安裝光碟映像 (ISO) 到 IDE Controller Port 1 Device 0
VBoxManage storageattach Win2003 --storagectl "IDE Controller" --port 1 --device 0 --type dvddrive --medium /path/to/win2003.iso
# 6. 設定記憶體 512MB、啟用 ACPI/IOAPIC
VBoxManage modifyvm Win2003 --memory 512 --acpi on --ioapic on
# 7. 設定網路:NAT 模式(預設),或橋接模式指定實體介面
VBoxManage modifyvm Win2003 --nic1 nat
# 或橋接:--nic1 bridged --bridgeadapter1 em0
# 8. 啟用 VRDE 遠端桌面(預設埠 3389),可用 rdesktop/mstsc 連線安裝作業系統
VBoxManage modifyvm Win2003 --vrde on --vrdeport 3389
# 9. 設定開機順序:先光碟後硬碟
VBoxManage modifyvm Win2003 --boot1 dvd --boot2 disk
# 10. 啟動 VM(無頭模式)
VBoxHeadless --startvm Win2003 &
rdesktop -r disk:share=/local/path -u administrator -p password :3389 連線虛擬機主控台。VBoxManage storageattach Win2003 --storagectl "IDE Controller" --port 1 --device 0 --medium none。--boot1 disk,重啟 VM 進入生產環境。freebsd-update 或重編核心)。--vrde on 生效;嘗試指定 --vrdeaddress 0.0.0.0。--hwvirtex on)、分配多核心(--cpus 2)、使用 VirtIO 網路/磁碟控制器(需 Guest Additions 支援)。純命令列部署 VirtualBox 於 FreeBSD,無需 X Window 系統開銷,極適合伺服器虛擬化、舊系統遷移、測試環境隔離等場景。