Ubuntu Server 虛擬機器安裝 VirtualBox Guest Additions
Posted on May 2, 2020 in VirtualBox by Amo Chen ‐ 2 min read
先前利用 VirtualBox 安裝 Ubuntu Server 的開發環境,為了讓 macOS 與 Ubuntu Server 虛擬機器如何共用資料夾,因此查了如何在 Ubuntu 虛擬機內利用指令安裝 VirtualBox Guest Additions 。
本文環境
- VirtualBox 6.1
- macOS 10.15
- Ubuntu Server 20.04
VirtualBox Guest Additions
VirtualBox Guest Additions 提供許多功能,包含滑鼠整合、共用資料夾、 guest 與 host 時間同步、共享剪貼簿等等,所以安裝完虛擬機器後也安裝 VirtualBox Guest Additions 會方便一點。
不過像 Ubuntu Server 這種沒有桌面環境的作業系統,就得透過指令完成,以下是安裝過程:
掛載 VirtualBox Guest Additions
首先啟動 Ubuntu 虛擬機器,接著在 macOS 選單列選取:
Devices > Insert Guest Additions CD Image …
上述步驟等同放進一個光碟到虛擬機器中,裡面就存放著 Guest Additions 。
掛載 Guest Additions 光碟 & 安裝
輸入以下指令掛載光碟:
$ sudo mount /dev/cdrom /mnt
成功的話,會在 /mnt
資料夾底下看到很多 VirtualBox 的檔案。
接著輸入以下指令安裝 Guest Additions:
$ sudo apt-get install -y build-essential dkms linux-headers-$(uname -r)
$ sudo ./VBoxLinuxAdditions.run
最後重開機一下,讓 Guest Additions 生效。
成功的話,應該會看到 The Virtual Machine reports that the guest OS supports mouse pointer integration. … 之類的文字在視窗上。
或者可以用以下指令確定,成功的話也會出現名為 vboxguest
的 kernel module :
$ lsmod | grep vboxguest
以上就是安裝 Guest Additions 的過程。
解決共用資料夾的權限問題
共用資料夾一定會遇到權限問題,其原因在於共用資料夾的群組權限屬於 vboxfs
,所以可以把使用者加到該群組中,就能夠解決 Permission denied 的問題,指令如下:
$ sudo adduser <使用者帳號> vboxsf
接著登出後,再登入之後就能夠存取共用資料夾了!
同場加映 - macOS 的 port forwarding
雖然跟 guest additions 沒什麼關係,不過在開發網路時經常需要從 host machine 直接連到 guest machine ,這時候 port forwarding 就很好用。
macOS 的 VirtualBox port forwarding 十分簡單,只要直接打上要轉送的通訊埠即可,例如以下是將 host machine 2222 port 轉送到 guest machine 的 22 port :
以上。
Happy Coding!