Install Oracle VirtualBox on Ubuntu Linux host.
「VirtualBox」為Oracle開發的開源免費虛擬機軟體,可以讓我們在Linux輕鬆體驗各式各樣的作業系統,例如跑Windows、Android-x86、macOS、Linux、FreeBSD等系統。
Oracle還開發了一組Guest Additions工具,讓我們方便跟虛擬機共享檔案。
本文Ivon專注討論如何在Linux系統的電腦安裝VirtualBox,以及Guest Additions使用技巧。
VirtualBox與QEMU/KVM的比較?#
VirtualBox跟另一款流行的虛擬機軟體 Virt Manager + QEMU/KVM功能很類似,二者都是開源免費的軟體。QEMU/KVM主要是由RedHat維護的軟體,利用Linux核心的KVM技術跑虛擬機。
VirtualBox優勢為跨平台,Linux、Windows、macOS都可以用,不像QEMU/KVM僅限於Linux。還有VirtualBox界面比較好上手,你可以把Windows上的使用經驗直接複製過來。
不過,VirtualBox缺乏QEMU/KVM的GPU直通(GPU Passthrough)的能力,也沒辦法模擬異質架構(如x86模擬ARM),靈活性較低。
此外,VirtualBox 使用自身的虛擬化技術(Type 2 HyperVisor),而非Linux的KVM(Type 1 HyperVisor),所以執行效能較QEMU/KVM差些。還有你不可以同時跑VirtualBox與QEMU/KVM虛擬機,二者會打架。
註:最近有個實驗性分支 virtualbox-kvm加入了KVM後端的功能,有望改善VirtualBox在Linux上的效能,並讓VirtualBox與QEMU/KVM同時執行,但尚未正式釋出。
1. VirtualBox硬體需求#
執行VirtualBox前,你需要一台x86_64架構的Linux電腦。CPU Intel或AMD都可以。
在BIOS開啟CPU的VT-x虛擬化加速技術。
接著用以下指令確認CPU是否已開啟VT-X加速,回傳值不應為0。
sudo grep -E -c '(vmx|svm)' /proc/cpuinfo
2. 安裝Linux版VirtualBox套件#
VirtualBox支援各大Linux發行版:Ubuntu、Fedora、openSUSE、Arch Linux、Gentoo
請按照 官網指示安裝VirtualBox。
Ubuntu LTS#
- 根據官網指示,開啟終端機,新增VirtualBox的APT套件庫
echo "deb [arch=amd64] http://download.virtualbox.org/virtualbox/debian $(lsb_release -sc) contrib" | \
sudo tee /etc/apt/sources.list.d/virtualbox.list
- 取得GPG金鑰
sudo apt install gnupg2
wget -qO- https://www.virtualbox.org/download/oracle_vbox_2016.asc | \
sudo gpg --dearmor --yes -o /etc/apt/trusted.gpg.d/virtualbox.gpg
sudo apt update
- 搜尋並安裝VirtualBox套件,例如目前為7.0
sudo apt search virtualbox
sudo apt install virtualbox-7.0
- 將自己加入vboxusers群組
sudo usermod -a -G vboxusers $USER
- 重開機後確認vboxdrv核心模組是否有載入
sudo lsmod | grep vboxdrv
- 確認VirtualBox版本
vboxmanage --version
Arch Linux#
- Arch Linux/Manjaro用戶從官方套件庫安裝以下套件(Arch套件庫的VirtualBox一律為最新版,如果需要舊版請到AUR找)
sudo pacman -S virtualbox virtualbox-host-dkms
- 將自己加入vboxusers群組
sudo usermod -a -G vboxusers $USER
- 重開機後確認vboxdrv核心模組是否有載入
sudo lsmod | grep vboxdrv
- 確認VirtualBox版本
vboxmanage --version
3. 如何安裝虛擬機系統#
市面上作業系統繁多,無法一概而論,但安裝方式不外乎就是:
從應用程式列表開啟VirtualBox
下載你要安裝系統的ISO
新增VirtualBox虛擬機,按照畫面指示設定,需要的話記得啟用EFI。將系統ISO掛接為CDROM,開機安裝。
4. 在虛擬機安裝VirtualBox Guest Additions#
「VirtualBox Guest Additions」是一套跑在虛擬機內的程式,讓宿主機與虛擬機之間能夠共享剪貼簿、共享資料夾、自動縮放視窗、啟用部份3D加速。
虛擬機內的Guest Additions版本最好跟宿主機VirtualBox版本保持一致。
VirtualBox官網沒有提供載點,你得在啟動虛擬機之後才可以從VirtualBox下載,並以CDROM掛接給虛擬機存取。
Linux虛擬機#
許多Linux發行版都有收Guest Addition套件,不過還是手動安裝Oracle釋出的版本比較好。
以Ubuntu虛擬機為例,啟動虛擬機,進入Ubuntu桌面
點選VirtualBox選單,裝置 → 插入Guest Addition映像
之後虛擬機內的Linux系統應該會多出CDROM裝置。在虛擬機內部開啟終端機,切換到CDROM目錄
# CDROM通常是掛載到/media或/run/media
ls /media
cd /media/user/VBox_GAs_7.0.18
- 執行安裝檔,使用DKMS安裝Guest Additions。
sudo apt update
sudo apt install build-essential dkms
sudo ./VBoxLinuxAdditions.run
#輸入yes開始安裝
重新啟動虛擬機
使用以下指令確認是否載入Guest Addition
lsmod | grep vboxguest
Windows虛擬機#
Guest Addition需要Windows XP以上系統。
啟動Windows虛擬機,進入桌面
點選VirtualBox選單,裝置 → 插入Guest Addition映像
之後虛擬機內的Windows系統應該會多出CDROM光碟
開啟光碟,以系統管理員身份執行
VBoxWindowsAdditions.exe
。