一、什麼是VHD文件
首先微軟的VHD文件格式是一種虛擬機硬盤(virtual machine hard disk), 並可以被壓縮成單個文件存放在宿主機器的文件系統上,主要包括虛擬機啟動所需系統文件。
關於VHD的應用:Virtual PC是一種windows虛擬機,它可以虛擬各種版本的windows,一個windows應該裝在一個硬盤分區上,而它是虛擬的windows,不可能單獨劃出一個硬盤分區給它安裝,所以它啟動所需系統文件都被壓縮成一個VHD格式的文件放在硬盤上。
VHD格式還將用於Microsoft Windows Server 2008 R2和Microsoft Windows 7,包括hypervisor為基礎的虛擬化技術- Hyper-V。 Hyper-V 可以離線操作VHD — 使得管理員可以通過一個VHD文件,安全進入系統,管理員可以對虛擬文件(VHD)訪問和執行一些離線的管理任務。
VHD 格式還應用在Windows Vista的Business, Enterprise and Ultimate 版本中,可以進行完整的系統備份。
二、多種類型的VHD文件
1、 固定 VHD
固定 VHD 文件被分配的虛擬磁盤大小為創建 VHD 時指定的虛擬磁盤大小。例如,如果創建的虛擬硬盤大小為2 GB,系統將創建一個大小約 2 GB 的文件,其中部分空間用於內部 VHD 結構。固定VHD的大小不會隨著向虛擬硬盤寫入數據而變化。
2、可擴展或動態 VHD
在任何給定時間,可擴展或動態 VHD文件的大小均與寫入該文件的實際數據大小相同。隨著寫入更多的數據,該文件也會動態增加。例如,支持 2 GB虛擬硬盤的文件最初在主機文件系統中的大小約為 2 MB。隨著不斷向此虛擬硬盤中寫入數據,文件逐漸增大,直到達到 2 GB的容量上限。
3、差異 VHD
差異 VHD 類似於動態 VHD,但只包含相關父虛擬磁盤的修改後的虛擬磁盤塊。差異VHD鏈接到特定的父VHD,稱為子VHD。父 VHD 文件為只讀文件;所有修改都是針對子 VHD 進行的。父 VHD 的 VHD文件類型可以是這三種VHD 類型中的任意一種,包括另一個差異 VHD。 多個子 VHD 文件可形成一個差異鏈。