在 Ubuntu 18.04 LTS 無頭伺服器上安裝 Oracle VirtualBox
本教程將指導你在 Ubuntu 18.04 LTS 無頭伺服器上,一步一步地安裝 Oracle VirtualBox。同時,本教程也將介紹如何使用 phpVirtualBox 去管理安裝在無頭伺服器上的 VirtualBox 實例。phpVirtualBox 是 VirtualBox 的一個基於 Web 的前端工具。這個教程也可以工作在 Debian 和其它 Ubuntu 衍生版本上,如 Linux Mint。現在,我們開始。
前提條件
在安裝 Oracle VirtualBox 之前,我們的 Ubuntu 18.04 LTS 伺服器上需要滿足如下的前提條件。
首先,逐個運行如下的命令來更新 Ubuntu 伺服器。
$ sudo apt update
$ sudo apt upgrade
$ sudo apt dist-upgrade
接下來,安裝如下的必需的包:
$ sudo apt install build-essential dkms unzip wget
安裝完成所有的更新和必需的包之後,重啟動 Ubuntu 伺服器。
$ sudo reboot
在 Ubuntu 18.04 LTS 伺服器上安裝 VirtualBox
添加 Oracle VirtualBox 官方倉庫。為此你需要去編輯 /etc/apt/sources.list
文件:
$ sudo nano /etc/apt/sources.list
添加下列的行。
在這裡,我將使用 Ubuntu 18.04 LTS,因此我添加下列的倉庫。
deb http://download.virtualbox.org/virtualbox/debian bionic contrib
用你的 Ubuntu 發行版的代碼名字替換關鍵字 『bionic』,比如,『xenial』、『vivid』、『utopic』、『trusty』、『raring』、『quantal』、『precise』、『lucid』、『jessie』、『wheezy』、或 『squeeze『。
然後,運行下列的命令去添加 Oracle 公鑰:
$ wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
對於 VirtualBox 的老版本,添加如下的公鑰:
$ wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
接下來,使用如下的命令去更新軟體源:
$ sudo apt update
最後,使用如下的命令去安裝最新版本的 Oracle VirtualBox:
$ sudo apt install virtualbox-5.2
添加用戶到 VirtualBox 組
我們需要去創建並添加我們的系統用戶到 vboxusers
組中。你也可以單獨創建用戶,然後將它分配到 vboxusers
組中,也可以使用已有的用戶。我不想去創建新用戶,因此,我添加已存在的用戶到這個組中。請注意,如果你為 virtualbox 使用一個單獨的用戶,那麼你必須註銷當前用戶,並使用那個特定的用戶去登入,來完成剩餘的步驟。
我使用的是我的用戶名 sk
,因此,我運行如下的命令將它添加到 vboxusers
組中。
$ sudo usermod -aG vboxusers sk
現在,運行如下的命令去檢查 virtualbox 內核模塊是否已載入。
$ sudo systemctl status vboxdrv
正如你在上面的截屏中所看到的,vboxdrv 模塊已載入,並且是已運行的狀態!
對於老的 Ubuntu 版本,運行:
$ sudo /etc/init.d/vboxdrv status
如果 virtualbox 模塊沒有啟動,運行如下的命令去啟動它。
$ sudo /etc/init.d/vboxdrv setup
很好!我們已經成功安裝了 VirtualBox 並啟動了 virtualbox 模塊。現在,我們繼續來安裝 Oracle VirtualBox 的擴展包。
安裝 VirtualBox 擴展包
VirtualBox 擴展包為 VirtualBox 訪客系統提供了如下的功能。
- 虛擬的 USB 2.0 (EHCI) 驅動
- VirtualBox 遠程桌面協議(VRDP)支持
- 宿主機網路攝像頭直通
- Intel PXE 引導 ROM
- 對 Linux 宿主機上的 PCI 直通提供支持
從這裡為 VirtualBox 5.2.x 下載最新版的擴展包。
$ wget https://download.virtualbox.org/virtualbox/5.2.14/Oracle_VM_VirtualBox_Extension_Pack-5.2.14.vbox-extpack
使用如下的命令去安裝擴展包:
$ sudo VBoxManage extpack install Oracle_VM_VirtualBox_Extension_Pack-5.2.14.vbox-extpack
恭喜!我們已經成功地在 Ubuntu 18.04 LTS 伺服器上安裝了 Oracle VirtualBox 的擴展包。現在已經可以去部署虛擬機了。參考 virtualbox 官方指南,在命令行中開始創建和管理虛擬機。
然而,並不是每個人都擅長使用命令行。有些人可能希望在圖形界面中去創建和使用虛擬機。不用擔心!下面我們為你帶來非常好用的 phpVirtualBox 工具!
關於 phpVirtualBox
phpVirtualBox 是一個免費的、基於 web 的 Oracle VirtualBox 後端。它是使用 PHP 開發的。用 phpVirtualBox 我們可以通過 web 瀏覽器從網路上的任意一個系統上,很輕鬆地創建、刪除、管理、和執行虛擬機。
在 Ubuntu 18.04 LTS 上安裝 phpVirtualBox
由於它是基於 web 的工具,我們需要安裝 Apache web 伺服器、PHP 和一些 php 模塊。
為此,運行如下命令:
$ sudo apt install apache2 php php-mysql libapache2-mod-php php-soap php-xml
然後,從 下載頁面 上下載 phpVirtualBox 5.2.x 版。請注意,由於我們已經安裝了 VirtualBox 5.2 版,因此,同樣的我們必須去安裝 phpVirtualBox 的 5.2 版本。
運行如下的命令去下載它:
$ wget https://github.com/phpvirtualbox/phpvirtualbox/archive/5.2-0.zip
使用如下命令解壓下載的安裝包:
$ unzip 5.2-0.zip
這個命令將解壓 5.2.0.zip 文件的內容到一個名為 phpvirtualbox-5.2-0
的文件夾中。現在,複製或移動這個文件夾的內容到你的 apache web 伺服器的根文件夾中。
$ sudo mv phpvirtualbox-5.2-0/ /var/www/html/phpvirtualbox
給 phpvirtualbox 文件夾分配適當的許可權。
$ sudo chmod 777 /var/www/html/phpvirtualbox/
接下來,我們開始配置 phpVirtualBox。
像下面這樣複製示例配置文件。
$ sudo cp /var/www/html/phpvirtualbox/config.php-example /var/www/html/phpvirtualbox/config.php
編輯 phpVirtualBox 的 config.php
文件:
$ sudo nano /var/www/html/phpvirtualbox/config.php
找到下列行,並且用你的系統用戶名和密碼去替換它(就是前面的「添加用戶到 VirtualBox 組中」節中使用的用戶名)。
在我的案例中,我的 Ubuntu 系統用戶名是 sk
,它的密碼是 ubuntu
。
var $username = 'sk';
var $password = 'ubuntu';
保存並關閉這個文件。
接下來,創建一個名為 /etc/default/virtualbox
的新文件:
$ sudo nano /etc/default/virtualbox
添加下列行。用你自己的系統用戶替換 sk
。
VBOXWEB_USER=sk
最後,重引導你的系統或重啟下列服務去完成整個配置工作。
$ sudo systemctl restart vboxweb-service
$ sudo systemctl restart vboxdrv
$ sudo systemctl restart apache2
調整防火牆允許連接 Apache web 伺服器
如果你在 Ubuntu 18.04 LTS 上啟用了 UFW,那麼在默認情況下,apache web 伺服器是不能被任何遠程系統訪問的。你必須通過下列的步驟讓 http 和 https 流量允許通過 UFW。
首先,我們使用如下的命令來查看在策略中已經安裝了哪些應用:
$ sudo ufw app list
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
正如你所見,Apache 和 OpenSSH 應該已經在 UFW 的策略文件中安裝了。
如果你在策略中看到的是 Apache Full
,說明它允許流量到達 80 和 443 埠:
$ sudo ufw app info "Apache Full"
Profile: Apache Full
Title: Web Server (HTTP,HTTPS)
Description: Apache v2 is the next generation of the omnipresent Apache web
server.
Ports:
80,443/tcp
現在,運行如下的命令去啟用這個策略中的 HTTP 和 HTTPS 的入站流量:
$ sudo ufw allow in "Apache Full"
Rules updated
Rules updated (v6)
如果你希望允許 https 流量,但是僅是 http (80) 的流量,運行如下的命令:
$ sudo ufw app info "Apache"
訪問 phpVirtualBox 的 Web 控制台
現在,用任意一台遠程系統的 web 瀏覽器來訪問。
在地址欄中,輸入:http://IP-address-of-virtualbox-headless-server/phpvirtualbox
。
在我的案例中,我導航到這個鏈接 – http://192.168.225.22/phpvirtualbox
。
你將看到如下的屏幕輸出。輸入 phpVirtualBox 管理員用戶憑據。
phpVirtualBox 的默認管理員用戶名和密碼是 admin
/ admin
。
恭喜!你現在已經進入了 phpVirtualBox 管理面板了。
現在,你可以從 phpvirtualbox 的管理面板上,開始去創建你的 VM 了。正如我在前面提到的,你可以從同一網路上的任意一台系統上訪問 phpVirtualBox 了,而所需要的僅僅是一個 web 瀏覽器和 phpVirtualBox 的用戶名和密碼。
如果在你的宿主機系統(不是訪客機)的 BIOS 中沒有啟用虛擬化支持,phpVirtualBox 將只允許你去創建 32 位的訪客系統。要安裝 64 位的訪客系統,你必須在你的宿主機的 BIOS 中啟用虛擬化支持。在你的宿主機的 BIOS 中你可以找到一些類似於 「virtualization」 或 「hypervisor」 字眼的選項,然後確保它是啟用的。
本文到此結束了,希望能幫到你。如果你找到了更有用的指南,共享出來吧。
還有一大波更好玩的東西即將到來,請繼續關注!
via: https://www.ostechnix.com/install-oracle-virtualbox-ubuntu-16-04-headless-server/
作者:SK 選題:lujun9972 譯者:qhwdw 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive