在 CentOS 上安裝及使用 VirtualBox
VirtualBox(VB)的開發正在迅速地進行,而這頁的資訊也許已經過時。現時的 Linux 下載頁已經收錄了一個 yum 軟件庫設定檔。很不幸地這些 RPM 套件並未能得體地處理重大版本升級。VB 內置的更新通知亦不整全,並且只會報告小型更新(例如:5.1.6->5.1.8),而不會報告主要更新(例如:4->5)。此刻,你必須先移除舊的版本,然後才能安裝一個新的主要版本,否則套件在升級時會遇上 RPM 衝突。請細心閱讀 VB 的使用手冊;然而,截至本文它仍未能稱職地討論 RPM 的安裝。最新詳情可參閱 VB 的網站。好消息就是,這些新版本擁有重大改善及嶄新功能,而它們與舊虛擬機器有良好的兼容性。 |
可供選用及獲支援的版本有 VirtualBox-7.0(VirtualBox-7.0-7.0.0_153978)及 VirtualBox-6.1(VirtualBox-6.1-6.1.40_154048)。要擁有 7.1/6.1 版的所有功能,你亦需要 VirtualBox Extension Pack,它支援 USB 2.0/3.0 裝置、RDP 及利用 Intel 網絡卡以PXE 開機。 |
有關運用 CentOS 作為 VB 客端的資訊,請參閱 CentOS 作為 VirtualBox 的客端操作系統。
另外參閱此篇 關於 VirtualBox 的 Red Hat Developer 文章。
請注意 VirtualBox 是 Oracle Corporation(它收購了 Sun Microsystems)的產品。CentOS 計劃並不提供,也不支援它,但是在論壇或虛擬化郵件列表上發問也許會獲得解答。
1. VirtualBox 是甚麼?
VirtualBox 是一套為不同操作系統而設的 x86 虛擬化產品。它是一個機器/硬件的虛擬化產品,亦即監督器,功能上與 VMware Server、Parallels Workstation、QEMU、KVM、及 Xen 相若,並能支援各種客端操作系統,當中包括 Windows(Server 2003-2012、Vista、7、8 及 10)、DOS/Windows 3.x、Linux(2.4 及 2.6)、Solaris/OpenSolaris、與及 OpenBSD。它的支援者聲稱它是「在 GNU General Public License(GPL)下唯一個以開源程式免費供應的專業方案」。
VirtualBox 以原生套件的方式提供給不同構架。它們有針對 RHEL5/RHEL6/RHEL7 的 i386 及 AMD64(x86_64)RPM 套件,可在 CentOS-5/6/7(或 Scientific 及其它衍生自 RHEL 的發行版本)上使用,此外還有針對 Debian、Ubuntu 及其衍生的 .deb 套件,Mac OS-X,Windows,Solaris 和 OpenSolaris,與及源代碼。
2. 為何用 VirtualBox?
雖然它不及那些修改 Linux 內核的操作系統級虛擬化方案,如 Xen、KVM、OpenVZ、或 Vserver 般高效率,它卻是容易安裝及使用。優點包括:
- 備有 RPM 套件
積極的社區支援
- 執行各種客端操作系統
- 良好的硬件存取支援,包括聲音、USB、及序列埠
- 支援不少主體操作系統
- 容許你執行微軟的操作系統及應用程式而不會搞亂你的電腦或要雙重開機
3. 安裝 VirtualBox
VirtualBox 的網頁內收錄了很多高質素的文件,包括:
- 用戶文檔
- 技術性文件
- 源代碼庫的時間表
- 改動的清單(修改日誌)
這份文章會簡略地介紹安裝的過程。現在同時備有 i386 及 AMD64(x86_64)版本。
你須要以 root 的身份完成下列步驟。請登入 root 的指令殼,或在一個終端視窗內輸入 "su -"。
- 註:你也可選擇下載及安裝個別的 RPM 而不設置軟件庫。這個方法已記載在 VB 的網站裡,因此不會包含在這裡。
cd /etc/yum.repos.d wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo
- 假若你不想軟件庫預設是被啟用的,你可選擇加入 enabled=0 這一行。這樣你便須要在 yum 指令內加入 --enablerepo virtualbox 才能存取該軟件庫。
安裝 VB 時是須要建立內核模塊的。假如 DKMS(Dynamic Kernel Module Support)已被安裝,它會被應用,並會簡化內核升級。我們建議在安裝 VirtualBox 前,首先從 EPEL 軟件庫安裝 DKMS。切勿忘記設定 yum-priorities 插件。安裝 DKMS 將會自動帶進所需的開發用依賴套件:
yum --enablerepo=epel install dkms
有位論壇用戶聲稱所有來自 Dell 的新版 DKMS 都可能有錯誤。 |
如果你不採用 DKMS,而開發環境及內核的源代碼仍未被安裝:
{{{yum groupinstall "Development Tools" yum install kernel-devel }}}
你也可選擇只安裝最少量的個別開發工具套件(最低限度需要 gcc 及 make),而不進行某些人視為太重型的 groupinstall。要是你使用 PAE 內核的話,請以 kernel-PAE-devel 代替 kernel-devel。如果你使用的並非標準 CentOS 內核,你必須從提供內核給你的地方取得並安裝內核的源代碼。切勿嘗試在 Xen 內核上使用 VirtualBox,或者在客端操作系統裡安裝一個 Xen 內核。
- 註:如果 CentOS 是客端的操作系統,這些套件亦會被用來建立「Guest Additions」驅動程式。
安裝 RPM:
yum install VirtualBox-5.2
假如開發環境已被正確地設定,這個安裝程式將會建立 vboxusers 這個群組及它所需的內核模塊。
請為每一個會執行 VirtualBox 的用戶執行:
usermod -a -G vboxusers 用戶名稱
或者利用圖像介面的 Users and Groups 工具。
4. 執行 VirtualBox
請以 vboxusers 群組內一位成員的身份執行 VB。在 VirtualBox-4.0 或 4.1 你可以選擇通過圖像介面的 File / Preferences / Extensions 選項安裝 VirtualBox Extension Pack。這個程序需要 root 的密碼。
在終端機的指令行內輸入 "VirtualBox &"
在 GNOME 或 KDE 裡執行「應用程式/系統工具/Oracle VM VirtualBox」
接納授權,選擇會否註冊,然後建立一個新的虛擬機器。VMware 的虛擬機器應該可應用在 VirtualBox 上。請在 Google 用 "vmware to virtualbox" 搜尋資訊。
你可以從選單或在網上取得幫助。
5. 在 VirtualBox 內運用 USB
VirtualBox 存取 USB 時要求用戶對 usbfs 裝置有寫入權限。請以 root 的身份執行以下指令:
mkdir /vbusbfs echo "none /vbusbfs usbfs rw,devgid=$(awk -F : '/vboxusers/ {print $3}' /etc/group),devmode=664 0 0" >> /etc/fstab mount -a
- 如果 CentOS 是虛擬機器內的一個客端操作系統,在安裝 VBox Guest Additions 之先,開發用及 DKMS 的套件亦同樣須要安裝在虛擬機器上。
VB 用戶也許會對 phpVirtualBox 以 PHP 實踐 VirtualBox 使用介面感興趣。
請不要將關於 VirtualBox 的問題電郵到 CentOS 的郵件列表(CentOS-virt 除外),或者帶到 CentOS 的 IRC 頻道。請使用 VirtualBox 社區的支援資源或 CentOS 論壇。
這頁的英文版本由 PhilSchaffner 建立,它現時由 ChristophGaluschka 維護。歡迎其他 Wiki 用戶作出更正、添加、或修改。
Translation of revision 168