EXSI 5.5 虛擬機,使用*-flat.vmdk恢復的方法

前兩天,同事下班誤關公司總電源,致使公司物理服務器斷電重啓。第二天,發現有一臺虛擬機變成了unknown,進入虛擬機所在目錄,發現配置文件全部丟失,只剩下兩個*-flat.vmdk文件。虛擬機也未做快照,數據也未備份。當時的心理是奔潰的。

        網上查找的方法是:新建虛擬機,使用已存在的虛擬磁盤。但是在使用已存在的虛擬磁盤時,發現無法識別僅存的兩個VMDK文件(因僅存的兩個VMDK文件被系統識別爲File文件,而不是虛擬機磁盤文件)。

        後來在VMWare官網找到一個方法,經測試已成功恢復虛擬機系統和數據。方法如下:


1、用SSH軟件的方式登錄EXSI (esxi5.5默認沒有開啓,需要登錄服務器開啓SSH服務);

2、登錄到EXSI以後,進入已損壞虛擬機所在的目錄;

3、使用ls -al *-flat.vmdk 查看所有VMDK文件及大小:

      如:-rw-------    1 root     root     214748364800 Dec 29 01:53 file-flat.vmdk

4、使用vmkfstools 命令來創建新磁盤文件:

      如:vmkfstools -c 214748364800 -a lsilogic -d thin temp.vmdk

      注意:此處的文件大小爲上一步驟查出的已損壞的虛擬機的虛擬磁盤的大小。

5、使用mv命令重命名temp.vmdk文件:

      如:mv  temp.vmdk  file.vmdk

      注意:新的文件名應爲已損壞的虛擬機的虛擬磁盤的flat文件一致。

6、用vi文本編輯器編輯剛重命名的VMDK文件:

      #vi file.vmdk

        # Disk DescriptorFile
        version=1
        encoding="UTF-8"
        CID=fffffffe
        parentCID=ffffffff
        isNativeSnapshot="no"
        createType="vmfs"

        # Extent description
        RW 419430400 VMFS "temp-flat.vmdk"  #此處將temp-flat.vmdk改名爲file-flat.vmdk

        # The Disk Data Base
        #DDB

        ddb.adapterType = "lsilogic"
        ddb.geometry.cylinders = "26108"
        ddb.geometry.heads = "255"
        ddb.geometry.sectors = "63"
        ddb.longContentID = "22dfff8e0162de5342e906b6fffffffe"

        ddb.thinProvisioned = "1"              #將此行刪除 

        ddb.uuid = "60 00 C2 93 53 6e 6f 36-a7 8d 90 97 90 0f 09 67"
        ddb.virtualHWVersion = "10"

7、新建一個與已損壞虛擬配置一樣虛擬機(CPU核數、內存大小都一樣,使用已存在的虛擬磁盤)。

8、到此步,就可以開啓虛擬機電源了,你會發現已損壞的虛擬機又回來了,系統回來了、數據回了、就

     連設置也回來了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章