在安裝 Oracle VirtualBox 之前,我們的 Ubuntu 18.04 LTS 服務(wù)器上需要滿(mǎn)足如下的前提條件。
首先,逐個(gè)運行如下的命令來(lái)更新 Ubuntu 服務(wù)器。
$ sudo apt update
$ sudo apt upgrade
$ sudo apt dist-upgrade
接下來(lái),安裝如下的必需的包:
$ sudo apt install build-essential dkms unzip wget
安裝完成所有的更新和必需的包之后,重啟動(dòng) Ubuntu 服務(wù)器。
$ sudo reboot
添加 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 發(fā)行版的代碼名字替換關(guān)鍵字 ‘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 -
接下來(lái),使用如下的命令去更新軟件源:
$ sudo apt update
最后,使用如下的命令去安裝最新版本的 Oracle VirtualBox:
$ sudo apt install virtualbox-5.2
我們需要去創(chuàng )建并添加我們的系統用戶(hù)到 vboxusers 組中。你也可以單獨創(chuàng )建用戶(hù),然后將它分配到 vboxusers 組中,也可以使用已有的用戶(hù)。我不想去創(chuàng )建新用戶(hù),因此,我添加已存在的用戶(hù)到這個(gè)組中。請注意,如果你為 virtualbox 使用一個(gè)單獨的用戶(hù),那么你必須注銷(xiāo)當前用戶(hù),并使用那個(gè)特定的用戶(hù)去登入,來(lái)完成剩余的步驟。
我使用的是我的用戶(hù)名 sk,因此,我運行如下的命令將它添加到 vboxusers 組中。
$ sudo usermod -aG vboxusers sk
現在,運行如下的命令去檢查 virtualbox 內核模塊是否已加載。
$ sudo systemctl status vboxdrv
正如你在上面的截屏中所看到的,vboxdrv 模塊已加載,并且是已運行的狀態(tài)!
對于老的 Ubuntu 版本,運行:
$ sudo /etc/init.d/vboxdrv status
如果 virtualbox 模塊沒(méi)有啟動(dòng),運行如下的命令去啟動(dòng)它。
$ sudo /etc/init.d/vboxdrv setup
很好!我們已經(jīng)成功安裝了 VirtualBox 并啟動(dòng)了 virtualbox 模塊,F在,我們繼續來(lái)安裝 Oracle VirtualBox 的擴展包。
VirtualBox 擴展包為 VirtualBox 訪(fǎng)客系統提供了如下的功能。
從 這里 為 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
恭喜!我們已經(jīng)成功地在 Ubuntu 18.04 LTS 服務(wù)器上安裝了 Oracle VirtualBox 的擴展包,F在已經(jīng)可以去部署虛擬機了。參考 virtualbox 官方指南 ,在命令行中開(kāi)始創(chuàng )建和管理虛擬機。
然而,并不是每個(gè)人都擅長(cháng)使用命令行。有些人可能希望在圖形界面中去創(chuàng )建和使用虛擬機。不用擔心!下面我們?yōu)槟銕?lái)非常好用的 phpVirtualBox 工具!
phpVirtualBox 是一個(gè)免費的、基于 web 的 Oracle VirtualBox 后端。它是使用 PHP 開(kāi)發(fā)的。用 phpVirtualBox 我們可以通過(guò) web 瀏覽器從網(wǎng)絡(luò )上的任意一個(gè)系統上,很輕松地創(chuàng )建、刪除、管理、和執行虛擬機。
由于它是基于 web 的工具,我們需要安裝 Apache web 服務(wù)器、PHP 和一些 php 模塊。
為此,運行如下命令:
$ sudo apt install apache2 php php-mysql libapache2-mod-php php-soap php-xml
然后,從 下載頁(yè)面 上下載 phpVirtualBox 5.2.x 版。請注意,由于我們已經(jīng)安裝了 VirtualBox 5.2 版,因此,同樣的我們必須去安裝 phpVirtualBox 的 5.2 版本。
運行如下的命令去下載它:
$ wget https://github.com/phpvirtualbox/phpvirtualbox/archive/5.2-0.zip
使用如下命令解壓下載的安裝包:
$ unzip 5.2-0.zip
這個(gè)命令將解壓 5.2.0.zip 文件的內容到一個(gè)名為 phpvirtualbox-5.2-0 的文件夾中,F在,復制或移動(dòng)這個(gè)文件夾的內容到你的 apache web 服務(wù)器的根文件夾中。
$ sudo mv phpvirtualbox-5.2-0/ /var/www/html/phpvirtualbox
給 phpvirtualbox 文件夾分配適當的權限。
$ sudo chmod 777 /var/www/html/phpvirtualbox/
接下來(lái),我們開(kāi)始配置 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
找到下列行,并且用你的系統用戶(hù)名和密碼去替換它(就是前面的“添加用戶(hù)到 VirtualBox 組中”節中使用的用戶(hù)名)。
在我的案例中,我的 Ubuntu 系統用戶(hù)名是 sk ,它的密碼是 ubuntu。
var $username = 'sk';
var $password = 'ubuntu';
保存并關(guān)閉這個(gè)文件。
接下來(lái),創(chuàng )建一個(gè)名為 /etc/default/virtualbox 的新文件:
$ sudo nano /etc/default/virtualbox
添加下列行。用你自己的系統用戶(hù)替換 sk。
VBOXWEB_USER=sk
最后,重引導你的系統或重啟下列服務(wù)去完成整個(gè)配置工作。
$ sudo systemctl restart vboxweb-service
$ sudo systemctl restart vboxdrv
$ sudo systemctl restart apache2
如果你在 Ubuntu 18.04 LTS 上啟用了 UFW,那么在默認情況下,apache web 服務(wù)器是不能被任何遠程系統訪(fǎng)問(wèn)的。你必須通過(guò)下列的步驟讓 http 和 https 流量允許通過(guò) UFW。
首先,我們使用如下的命令來(lái)查看在策略中已經(jīng)安裝了哪些應用:
$ sudo ufw app list
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
正如你所見(jiàn),Apache 和 OpenSSH 應該已經(jīng)在 UFW 的策略文件中安裝了。
如果你在策略中看到的是 Apache Full,說(shuō)明它允許流量到達 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
現在,運行如下的命令去啟用這個(gè)策略中的 HTTP 和 HTTPS 的入站流量:
$ sudo ufw allow in "Apache Full"
Rules updated
Rules updated (v6)
如果你希望允許 https 流量,但是僅是 http (80) 的流量,運行如下的命令:
$ sudo ufw app info "Apache"
現在,用任意一臺遠程系統的 web 瀏覽器來(lái)訪(fǎng)問(wèn)。
在地址欄中,輸入:http://IP-address-of-virtualbox-headless-server/phpvirtualbox。
在我的案例中,我導航到這個(gè)鏈接 – http://192.168.225.22/phpvirtualbox。
你將看到如下的屏幕輸出。輸入 phpVirtualBox 管理員用戶(hù)憑據。
phpVirtualBox 的默認管理員用戶(hù)名和密碼是 admin / admin。
恭喜!你現在已經(jīng)進(jìn)入了 phpVirtualBox 管理面板了。
現在,你可以從 phpvirtualbox 的管理面板上,開(kāi)始去創(chuàng )建你的 VM 了。正如我在前面提到的,你可以從同一網(wǎng)絡(luò )上的任意一臺系統上訪(fǎng)問(wèn) phpVirtualBox 了,而所需要的僅僅是一個(gè) web 瀏覽器和 phpVirtualBox 的用戶(hù)名和密碼。
如果在你的宿主機系統(不是訪(fǎng)客機)的 BIOS 中沒(méi)有啟用虛擬化支持,phpVirtualBox 將只允許你去創(chuàng )建 32 位的訪(fǎng)客系統。要安裝 64 位的訪(fǎng)客系統,你必須在你的宿主機的 BIOS 中啟用虛擬化支持。在你的宿主機的 BIOS 中你可以找到一些類(lèi)似于 “virtualization” 或 “hypervisor” 字眼的選項,然后確保它是啟用的。
本文到此結束了,希望能幫到你。如果你找到了更有用的指南,共享出來(lái)吧。
還有一大波更好玩的東西即將到來(lái),請繼續關(guān)注!