顯示具有 VirtualBox 標籤的文章。 顯示所有文章
顯示具有 VirtualBox 標籤的文章。 顯示所有文章

2009/09/13

在 Ubuntu VM 上安裝 VirtualBox Guest Additions

VirtualBox Guest Additions 能讓 guest OS 和 host OS 之間更緊密合作,也提供 guest OS 許多額外的功能 (例如和 host OS 分享資料夾)。想享受這些好處,請參考如下步驟安裝 VirtualBox Guest Additions。

首先,啟動 guest OS,並在所屬視窗的功能表上點選 Devices,然後再點 Install Guest Additions。注意!這並不會啟動安裝的動作,而是將安裝光碟插入 guest OS 的光碟機中。你必須手動執行安裝的指令。請用以下指令看看安裝光碟的內容:
sudo -s
ls -la /media/cdrom
註:若看不到任何東西,表示你的 Ubuntu 沒有自動幫你 mount 剛插入的光碟。請用以下指令自己來:
mount -t iso9660 /dev/cdrom /media/cdrom
若一切順利,你應該會看到幾個 VBox 開頭的檔案。然後,請執行以下指令:
/media/cdrom/VBoxLinuxAdditions-x86.run
如果你的 guest Ubuntu 才剛安裝完畢,上述指令應該會提醒你缺了哪些東西以至於無法安裝。以下是我剛安裝好 jeos-8.04.3-jeos-i386 之後所得到的「提醒」:
VirtualBox 3.0.6 Guest Additions installation
Please install GNU make.
Please install the build and header files for your current Linux kernel.
Ther current kernel version is 2.6.24-24-virtual
Please install the GNU compiler.
Problems were found which would prevent the Guest Additions from installing.
Please correct these problems and try again.
此時你必須發揮見招拆招的精神把這些問題解決:
apt-get install make
apt-get install linux-headers-2.6.24-24-virtual
apt-get install gcc
將缺少的東西補足之後,再執行一次 VBoxLinuxAdditions-x86.run 即可完成安裝的動作。

Reboot 之後,執行以下指令應該可以看到 guest OS 已經載入幾個 VirtualBox 的 kernel modules (如 vboxvfs、vboxadd 等):
lsmod | grep vbox
恭喜!這代表你已經大功告成了!

2008/12/24

VirtualBox 2.1.0 的 Host Interface Networking

使用 VirtualBox 的 Host Interface Networking 的好處是:可以省掉 NAT 型態設定 port forwarding 的麻煩;缺點則是要多一點設定的工作。但是 VirtualBox 2.1.0 版針對此部份有大幅的改進,只要從 GUI 點選 Host Interface,再從選單選出 host 主機的網路介面即可。請參考:

2008/11/25

coLinux: 讓 Linux 在 Windows 上跳舞

需要同時使用 Windows 和 Linux 的人,除了可以在 Windows 上用 VirtualBox 或 VMware 等跑 Linux 的 virtual machine 外,還有另一個選擇:Cooperative Linux

Cooperative Linux 簡稱 coLinux,是 Windows device drivers 加上搭配的 Linux kernel modules 所形成的組合。透過這個組合,原生的 Linux 系統可以和 Windows 共用硬體資源。你可以想像 coLinux 是將 Linux 系統當成 Windows 的應用程式來執行。據說任何 GNU/Linux 的 distro 都可跑,不過要稍微調整過。比較簡單的方法是安裝 coLinux 時,直接挑選他們準備好的 distro。

和使用 virtual machine 的方式來比,coLinux 有幾個缺點:
  1. 穩定性。coLinux 以最高權限的方式和 Windows 共用資源,萬一有甚麼問題,整個 Windows 系統都有可能受到影響。
  2. 安全性。在 Linux 系統上取得 root 權限,就有可能也取得 Windows 系統的管理者權限。
  3. coLinux 目前還無法共用繪圖硬體,因此不能在 coLinux 上跑 X server (不過可以在 Windows 上跑 X server)。

2008/09/01

Ubuntu 上 VirtualBox 的 Host Key

在 Ubuntu 上安裝 VirtualBox 很容易,卻很容易遇到一個問題:Host Key 沒有作用。其實,正確的說法是:在 guest OS 上不能使用 keyboard。

這問題很容易解決,只要安裝 scim-bridge-client-qt 這個 package 就可以了。安裝完之後,記得重開機才會生效。

2008/08/31

VirtualBox 的三種網路型態

VMware Player 的 host OS 和 guest OS 之間有 三種網路型態。VirtualBox 同樣也有三種,而且功能很類似:
  • Host Interface Networking (HIF)
  • Internal Networking
  • Network Address Translation (NAT)
其中,Network Address Translation (NAT) 與 VMware 的名稱一樣,功能也完全相同。

Host Interface Networking (HIF) 除了名字不同之外,功能和 VMware 的 Bridged Networking 是一樣的。

Internal Networking 則和 WMware 的 Host-Only Networking 相近,但有以下不同:
  • Internal network 上沒有 DHCP server
  • 不能直接和 host OS 溝通
當然,如果你比較習慣 VMware 的 Host-Only Networking,已經有人試出設定的方法:

2008/08/30

用 VirtualBox 跑 Ubuntu Server

利用 VirtualBox 來安裝 Ubuntu 8.04.1 LTS Server Edition。過程很順利,不過安裝好了 Ubuntu 卻開不起來,開機時出現 CPU 缺少了一些 feature 的錯誤訊息:
This kernel requires the following features not present on the CPU:
0:6
Unable to boot - please use a kernel appropriate for your CPU.

原來 32bit 的 x86 最多只能支援到 4GB 的 RAM,但若有 PAE (Physical Address Extension) 的加持就能擴充到 64GB。因為 Ubuntu Server 的 32bit kernel 用到 PAE 這個特性,所以在 VirtualBox 上必須啟動這個 PAE:
Settings -> General -> Advanced -> Enable PAE/NX

2008/06/28

在 VirtualBox 的 NAT 底下開 port

VirtualBox 預設的網路模式是 NAT。換句話說,Guest OS 可以透過 Host OS 連到外界,但 Guest OS 受到 NAT 的保護,外界無法連進去。

因此,若要在 Guest OS 架設任何服務 (例如:sshd),就必須設定 VirtualBox 的 port forwarding。方法如下:
VMNAME="Ubuntu"
SVR=ssh

VBoxManage setextradata "$VMNAME" \
"VBoxInternal/Devices/pcnet/0/LUN#0/Config/$SVR/HostPort" \
2222

VBoxManage setextradata "$VMNAME" \
"VBoxInternal/Devices/pcnet/0/LUN#0/Config/$SVR/GuestPort" \
22

VBoxManage setextradata "$VMNAME" \
"VBoxInternal/Devices/pcnet/0/LUN#0/Config/$SVR/Protocol" \
TCP
這樣,當外界連到 Host OS 的 port 2222,就等於連到 Guest OS 的 port 22。

當這種設定很多時,可以用以下的指令來列出所有的設定值:
VBoxManage getextradata "$VMNAME" enumerate
注意!做完上述設定之後,要重新啟動 VirtualBox 才會生效。

2008/06/27

在 Ubuntu 上安裝 VirtualBox OSE


貼後補充:亦可到 VirtualBox 官方網站 下載適合 Ubuntu 的最新版本,用 dpkg -i 即可安裝。


雖然 VMware Player 在 Windows 上用得很順手,我還是決定在 Ubuntu 上試試 VirtualBox。沒想到安裝和使用都出奇的簡單,而且操作介面和功能都令我驚艷。

安裝方法非常簡單,只要用 Synaptic 或 apt-get 安裝以下 package 即可:
  • virtualbox-ose
  • virtualbox-ose-modules-generic
安裝好了之後,在主選單會新增一組「系統工具」的選單,馬上就可以啟動 VirtualBox OSE。不過在你真正執行 virtual machine 之前,你必須先將自己加到 /etc/group 的 vboxusers group。

其實,我還是有遇到一點小麻煩。用此版的 VirtualBox,一旦將 keyboard 的控制權交給 virtual machine 之後,系統就卡住了:Host 和 Guest 都沒辦法控制,後來才找到解法: