某單位的一 臺VMware Workstation虛擬機由于服務(wù)器出故障,在重新啟動之后虛擬機無法啟動。再次打開VMware Workstation時,發(fā)現(xiàn)虛擬機處理“休眠”狀態(tài)。
啟動虛擬機,提示“句柄無效 無法打開磁盤xxxx或者某一個快照所依賴的磁盤”,無法開機。
圖1 掛起的虛擬機
打開虛擬機所在的文件夾,看到有多個VMDK(虛擬機硬盤文件)、vmsn(虛擬機快照文件)。
正常掛起的虛擬機會有一個擴展名為.vmss的文件,該文件是“VMware已掛起虛擬機的狀態(tài)”文件,如圖1所示,這是一個掛起的虛擬機的文件截圖。
圖2 檢查虛擬機磁盤文件
但是,即使這個擴展名為.vmss的文件被刪除,虛擬機不能從掛起狀態(tài)恢復(fù),打開虛擬機電源的時候,虛擬機會重新啟動,只是會丟失掛起時的狀態(tài)。而現(xiàn)在虛擬機不能開機,提示“句柄錯誤……”,這是虛擬機出了問題,需要恢復(fù)或修復(fù)。
經(jīng)過多次嘗試,通過使用DiskGenius克隆虛擬機硬盤、重建虛擬機的方式解決了該問題,下面介紹修復(fù)虛擬機的步驟和過程。
1.編輯虛擬機配置文件,檢查并記錄硬盤文件名稱(本示例為“Windows Server 2003 Enterprise Edition-000003.vmdk”),硬盤類型為“SCSI”,硬盤大小為20GB(如圖2)。
2.在該服務(wù)器上安裝并運行DiskGenius
軟件。當前服務(wù)器共有3塊硬盤,大小依次是300GB、1TB、1TB。 在“硬 盤”對話框中選擇“打開虛擬硬盤文件”。
3.瀏覽打開虛擬機文件夾,選 擇“Windows Server 2003 Enterprise Edition-000003.vmdk”(因為該虛擬機創(chuàng)建過快照,會有多個VMDK文件,一定要選擇正確的文件,這在圖2中已經(jīng)檢查過)。
如果能正確加載虛擬機硬盤,并且能瀏覽、查看到硬盤的文件及文件夾,表示數(shù)據(jù)沒有太大問題,虛擬機可以恢復(fù),此時打開的虛擬機硬盤大小為20GB,能看到文件內(nèi)容。
4.在“硬盤”菜單中選擇“新建虛擬硬盤文件→新建VMware虛擬硬盤文件”(如圖3)。VMware虛擬硬盤”對話框中,選擇新建VMware虛擬硬盤的保存路徑及虛擬硬盤文件名,通常情況下新建一個文件夾,稍后會在此文件夾新建虛擬機,要保證保存虛擬硬盤文件夾有足夠的空間。在“容量”文本框中輸入新建虛擬硬盤的文件大小,創(chuàng)建的虛擬硬盤大小要大于或等于源虛擬機硬盤的大小。
在本示例中,源虛擬硬盤大小為20GB(如圖3中所示),新建虛擬硬盤大小為25GB。在“適配器類型”中選擇“SCSI”,這與源虛擬機硬盤類型相同(如圖4)。
圖3 新建VMware虛擬硬盤文件
圖4 創(chuàng)建新虛擬硬盤
5.在“工具”菜單選擇“克隆硬盤”。在“選擇源硬盤”對話框中選擇大小為20GB的源虛擬機硬盤,注意不要選錯。在“選擇目標硬盤”對話框中選擇新建的大小為25GB的空閑硬盤,注意不要選錯。在“克隆硬盤”對話框中選擇“按文件系統(tǒng)結(jié)構(gòu)原樣復(fù)制”,單擊“開始”按鈕。
6.DiskGenius提示目標硬盤各分區(qū)上的所有文件將會被覆蓋,提示要將“VD0 :Windows Server 2003……(20GB)”復(fù)制到“VD1:……(25GB)”嗎?在此會有要復(fù)制的源和目標硬盤的信息和大小,再次確認檢查無誤之后單擊“確定”按鈕。
在提示“是否為目標磁盤建立一個新的磁盤簽名”時單擊“否”。
7.DiskGenius開始克隆硬盤,直到克隆完成。單擊“完成”按鈕,退出DiskGenius。
8.打 開VMware Workstation,新建虛擬機。在“歡迎使用新建虛擬機向?qū)А睂υ捒蛑羞x擇“自定義”。在“選擇一個客戶機操作系統(tǒng)”對話框中選擇“Windows Server 2003企業(yè)版”,這與原來的虛擬機操作系統(tǒng)相同。
9.在“命名虛擬機”對話框中,單擊“瀏覽”按鈕選擇圖4使用DiskGenius創(chuàng)建虛擬硬盤的文件夾,然后設(shè)置虛擬機名稱。此時會提示“指定的位置似乎包含一個現(xiàn)有的虛擬機……”,單擊“繼續(xù)”按鈕。在“選擇磁盤”對話框中選擇“使用一個已存在的虛擬磁盤”。
10.瀏覽選擇圖4中創(chuàng)建的虛擬磁盤文件,此時會提示“將現(xiàn)有的虛擬磁盤類型轉(zhuǎn)換為新的格式嗎”單擊“保持現(xiàn)有格式”按鈕。
在“準備創(chuàng)建虛擬機”對話框中,檢查新建虛擬機的配置,檢查無誤之后單擊“完成”按鈕。
11.創(chuàng)建虛擬機完成后打開虛擬機電源。虛擬機啟動并進入系統(tǒng),檢查數(shù)據(jù)及應(yīng)用是否正常,至此虛擬機修復(fù)完成,使用新創(chuàng)建的虛擬機代替原來的虛擬機即可。