The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何將 Virtual PC 2007 上面的 VM 移至 Hyper-V 平台

最近剛裝了一台 Windows Server 2008 起來,打算將公司內部常用的幾個虛擬機器(Virtual Machine, VM)全部移至 Hyper-V 平台,以下是我本次轉移虛擬機器過程的筆記,Host 主機是 Windows Server 2008 + Hyper-V,Guest 主機是 Windows Server 2003 with Service Pack 2。

準備工作

  • 針對所有要轉移的 Guest 主機
    1. 將 Guest 主機的作業系統與相關軟體都升級到最新版的 Service Pack。
    2. 將 Guest 主機內的 Virtual Machine Additions 軟體移除。
    3. 將 Guest 主機確實關機,不要用 Save State 的方式關閉 VM!
    4. 壓縮 *.vhd 檔(非必要步驟),可參考:如何壓縮 VHD 虛擬硬碟的大小
    5. 將 Guest 主機的 *.vhd 檔全部複製到 Hyper-V 主機上。(原本的 *.vhd 先不要砍掉喔,以防萬一)
  • 針對要轉移的目的主機,也就是 Windows Server 2008 與 Hyper-V
    1. 執行 Windows Server 2008 的 Windows Update 就會安裝最新版的 Hyper-V 軟體了。
    2. 新增角色:Hyper-V

在 Hyper-V 新增虛擬機器

1. 新增 Virtual Machine

Hyper-V :: 執行 :: New :: Virtual Machine... 

2. 開啟後先按下一步,接者指定新的 VM 名稱,並且你可以自己指定該 VM 所在的目錄!

Hyper-V :: 執行 :: New :: Virtual Machine :: Specify Name and Location

3. 設定足夠的記憶體給 VM

Hyper-V :: 執行 :: New :: Virtual Machine :: Assign Memory

4. 選擇網路介面

Hyper-V :: 執行 :: New :: Virtual Machine :: Configure Networking

5. 指定你從原本主機複製過來的 *.vhd 檔所在目錄,你可以點選 [Browser] 選取你 VM 的第一顆硬碟,若你的 VM 有多顆硬碟可以之後再加入即可。

Hyper-V :: 執行 :: New :: Virtual Machine :: Connect Virtual Hard Disk

6.  按下 [Finish] 之後或按下 [Next] 再按 [Finish] 就新增完成了,但記住先不要啟用主機。

7. 若要外掛第2顆以上的硬碟,可以在此時新增上去。先在剛新增的 VM 項目點選滑鼠右鍵,再點選設定畫面的 IDE Controller 0,點選 [Add] 新增 Hard Disk,然後點選 [Browse] 選取你的第2顆硬碟即可。

Hyper-V :: Settings 

開機,並設定虛擬機器

1. 在 [伺服器管理員] 中雙擊剛剛新增的 Virtual Machine,並按下 Ctrl + S 開機。不過有點必須注意,如過你是用「遠端桌面」的方式連到 Windows Server 2008 進行操作,就會在點選進去後出現以下畫面,也就是你無法在使用遠端桌面的連線下,在 Guest 主機中使用滑鼠,所以建議的操作方式是直接在本機操作,或用遠端連線至 Guest 主機再操作。不過,你也有可能跟我一樣抓不到網路卡,所以只能在本機操作!

Hyper-V :: Virtual Machine Connection

2. 只要遇到新增硬體或有些未知的設備需要安裝 Driver 時,全部都先跳過。若提示需要重開機,也先不要重開,等設定完再重開即可。

3. 在 Guest 中插入 Integration Services Setup Disk,準備安裝 Microsoft Hyper-V Integration Components 到我們的 Guest 主機。這個 Microsoft Hyper-V Integration Components 等同於 Virtual PC 中的 Virtual Machine Additions 用途。

Hyper-V :: Action :: Insert Integration Services Setup Disk

4. 然後進入 Guest 主機點選剛新增的光碟機,他會提示你需要升級 HAL,點下 [確定] 即可。

Hyper-V :: 需要 HAL 升級 

5. 當虛擬機器的 HAL 升級完成後,會被要求重開機。點選 [是(Y)] 重新開機。

Hyper-V :: 當虛擬機器的 AHL 升級完成後,會被要求重開機

6. 重開機完並登入後 Hyper-V Integration Components 才會開始安裝。這裡也有件事要注意,只要遇到「尋找新增硬體精靈」都先按下 [取消] 按鈕,否則會卡住 Hyper-V Integration Components  的安裝,應該先讓 Hyper-V Integration Services 安裝完成再說。

Hyper-V :: 重開機後,Hyper-V Integration Components 才會開始安裝

7. 安裝完成後必須再重新開機一次。這時已經可以透過遠端桌面遠端操控 Guest 主機了。

Hyper-V Integration Services 完成安裝 

完成轉移

終於大功告成啦!因為網路卡才剛抓到,所以如果你的 VM 有設定過固定 IP 的話,可能必須重新設定一次。其他的部分到目前為止還沒看到有任何異狀,應該是沒問題吧。

這台 Windows Server 2008 (x64) 我裝了 8GB 的記憶體,整體的運行效能與感覺都蠻不錯的,用了新玩意還挺新鮮的。:-)

相關連結