iT邦幫忙

2026 iThome 鐵人賽

DAY 14
0
IT Operation

大學生的VirtualBox虛擬機與Ubuntu實戰30天系列 第 14

Day 14|虛擬機的影分身之術:完整再製 vs. 連結再製

  • 分享至 

  • xImage
  •  

在過去幾天裡,我們搞定了共用資料夾、快照機制,並徹底打通了 NAT、橋接與連接埠轉送的網路世界。
此時你的 Ubuntu 虛擬機已經具備全螢幕、檔案即時同步與 SSH 遠端連線能力,可以說是一個相當完美、乾淨且好用的機器。
但問題是:

  • 如果今天你想練習架設 MySQL 資料庫,又想另外開一台機器練習 Docker 或 Kubernetes 集群,難道每次都要拿出 ISO 檔重新「按下一步」安裝半小時嗎?
  • 如果直接複製虛擬機,會不會因為兩台機器的設定完全一模一樣,導致網路產生衝突?

今天我們要來學的技能是—虛擬機再製,並搞懂兩種複製模式的差異與避坑指南。

1.完整再製 vs. 連結再製
在 VirtualBox 的介面中,對虛擬機按右鍵選單看到「再製」,點進去後,系統會跳出兩個選項:「完整再製」與「連結再製」。

比較項目 完整再製 連結再製
運作原理 將底層的虛擬硬碟(.vdi)完整拷貝一份全新檔案 依賴母機的某張快照,只建立一個「差量硬碟」記錄差異
硬碟空間佔用 極大(母機 20 GB,新機器就實打實佔 20 GB) 極小(初期只需幾 MB,隨使用量微幅成長)
建立耗時 較長(視硬碟速度,約需 1~5 分鐘) 極快(通常只需 2~3 秒鐘)
母機相依性 完全獨立(母機刪除或壞掉,子機不受任何影響) 高度依賴(母機或關聯快照一旦刪除,子機直接損毀
最佳使用時機 建立長期主力機、移交給同事、獨立長期專案 短期功能測試、搭建多節點分散式實驗環境(如 Hadoop)
  • 完整再製:就像買了一間跟樣品屋一模一樣的新房子,內部裝潢獨立,互不干涉。
  • 連結再製:就像在樣品屋上加蓋一層違建,基底必須永遠依附著樣品屋存在。

2.MAC 位址原則

  • 保留所有網路適配器的 MAC 位址:再製出來的虛擬機網路身分證與母機一模一樣,如果兩台機器同時開機並切換到橋接模式,實體路由器會因為偵測到 MAC 位址衝突而不知道把封包發給誰,導致兩台 VM 一起斷網。
  • ✔️ 為所有網路適配器產生新的 MAC 位址:VirtualBox 會為新機器產生一組全新的虛擬網卡身分證,確保網路互不干擾。請選擇此項

3.進行再製
1.清理掉練習時產生的桌面測試檔,並將虛擬機正常關機。
2.在 VirtualBox 主選單選取虛擬機,按滑鼠右鍵點選「再製...」。
3.設定新虛擬機資訊:

  • 名稱:取簡單好辨識的名稱。
  • MAC 位址原則:下拉選擇「為所有網路適配器產生新的 MAC 位址」。
    4.選擇再製類型:
  • 如果硬碟空間充足且希望獨立運作,選擇「完整再製」。
  • 如果想快速做測試且省空間,選擇「連結再製」(系統會自動基於當前狀態建立快照並連結)。

5.點擊「完成」。
https://ithelp.ithome.com.tw/upload/images/20260913/20183886dPJrccc1bY.png

4.實機開機驗證:修改主機名稱
把再製出來的新機器開機後,你會發現一個小問題:終端機的提示字元依然寫著 ithome@ithome-VirtualBox:~$,兩台機器的名字一模一樣,開多個視窗時非常容易搞混操作。

我們可以來為新機器改名
打開新虛擬機的終端機,執行以下指令

#更改本機名稱為 icopy
sudo hostnamectl set-hostname icopy

# 編輯 hosts 檔案更新對應
sudo sed -i 's/ithome-VirtualBox/icopy/g' /etc/hosts

#  重新開啟終端機或重開機
exec bash

此時終端機提示字元就會變更為 ithome@icopy:~$,不用擔心打錯指令會改錯機器了。
https://ithelp.ithome.com.tw/upload/images/20260913/20183886DH6GsDtUM4.png

|明日目標:如何使用本機的 VS Code Remote - SSH 直接連進 Ubuntu 寫程式。|


上一篇
Day 13|虛擬機網路大解密(下):NAT 搭配連接埠轉送,打造最穩定的本機連線通道
下一篇
Day 15|實體機 VS Code 透過 Remote-SSH 直連 Ubuntu 開發環境
系列文
大學生的VirtualBox虛擬機與Ubuntu實戰30天22
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言