快照混亂情況下虛擬機器的恢復

2021-09-20 15:48:37 字數 2261 閱讀 1856

問題背景:

1、一台虛擬機器,建立了三份快照。在一次維護過程中,把快照全部刪除(合併快照,保持當前最新狀態),同時關閉虛擬機器。

由於快照較多,還沒有全部合併完成,虛擬機器已經關機了。

2、重新開啟虛擬機器時提示開機失敗,提示大概意思是找不到之前的快照檔案,無法開機。

3、開啟儲存管理器,原始vmdk檔案、000001.vmdk 、000002.vmdk 000003.vmdk檔案都在,虛擬機器當前所使用的硬碟對應000002.vmdk。

4、重新裝載虛擬機器,只能選擇原始vmdk作為硬碟,無法選擇其他vmdk作為硬碟,如果掛載原始盤,虛機只回到沒有做任何快照時候的狀態,後期的資料全部丟失。

解決步驟:

登入到esx主機,進入虛機所在的檔案目錄,有以下多個檔案:

abc.-000001-delta.vmdk

abc.-000001.vmdk

abc.-000002-delta.vmdk

abc.-000002.vmdk

abc.-000003-delta.vmdk

abc.-000003.vmdk

abc.-flat.vmdk

abc..vmdk

abc.vmx

... ...

1、#grep -i filename abc.vmx 檢視當前虛擬機器掛載哪些硬碟,結果如下:

scsi0:0.filename="abc.-000002.vmdk" //當前硬碟為0002.vmdk;

2、#cat abc.-00002.vmdk 檢視00002硬碟的父盤是哪一塊,資訊如下:

cid=929c1b7d //此硬碟的編號

parentcid=9b5a6f9f //父盤的編號

parentfilenamehint="abc.-000001.vmdk" //父盤對應的硬碟

3、找到並開啟上面的父盤(000001)資訊

#cat abc.-000001.vmdk,結果如下:

cid=9b5a6f9f //此硬碟的編號

parentcid=9b5a6f9f//父盤的編號,此處9b5a6f9f資訊已經混亂了

parentfilenamehint="abc.-000003.vmdk" //父盤對應的硬碟

4、忽略混亂錯誤,找到並開啟-000003.vmdk ,

#cat abc.-000003.vmdk,結果如下:

cid=9b5a6f9f //此硬碟的編號,混亂,和子盤重複

parentcid=014617b2//父盤的編號,混亂,

parentfilenamehint="abc..vmdk" //父盤對應的硬碟

5、開啟.vmdk,

#cat abc..vmdk,結果如下:

cid=95bd0757//此硬碟的編號,此盤沒有子盤,所以提示找不到快照所對應的硬碟!

parentcid=ffffffff //沒有父盤,此盤為最原始的盤。

6、按照vmware文件的要求,正常情況下用vmkfstools將原始盤轉殖乙個新的硬碟,然後將新硬碟掛載到空的虛機上,應該能夠解決問題。

#mkdir recover

#vmkfstools -i abc..vmdk recover/newdisk.vmdk

執行會顯示:

destination disk format :vmfs thick

coloning disk 'abc..vmdk'...

clone: 100% done。

由於編號混亂,如果對..vmdk轉殖,所得到的硬碟和原始盤一樣;如果對000001或000002、000003.vmdk進行轉殖,提示當建立子盤的時候,父盤已經被修改過了,無法轉殖。

7、如果人為按照上述邏輯,修改每塊硬碟的cid號和父盤的cid號,得到的轉殖盤掛載、開機後顯示硬碟損壞。

8、考慮到當前虛擬機器的硬碟為000002.vmdk,正常的快照合併時,應該先將3合併到2,再將2合併到1,再將1合併到原始盤,只是合併到2的時候就關機了,所以編號混亂。按照此思路,修改000001.vmdk檔案,

將父盤cid(9b5a6f9f)修改為原始盤的cid(95bd0757),並將parentfilenamehint直接指向到原始盤..vmdk,修改後的000001.vmdk資訊如下:

cid=9b5a6f9f 

parentcid=95bd0757

parentfilenamehint="abc..vmdk" 

9、按照上述方式,果然回到最新狀態,只不過開啟虛擬後裡面的部分資料夾損壞,這次運氣比較好話,最重要的幾個檔案和資料庫是最新的,有些資料夾無法開啟,比原始盤的效果更好了。

Linux虛擬機器快照的建立

什麼是虛擬機器的快照?磁碟 快照 是虛擬機器磁碟檔案 vmdk 在某個點及時的複本。系統崩潰或系統異常,你可以通過使用恢復到快照來保持磁碟檔案系統和系統儲存。當公升級應用和伺服器及給它們打補丁的時候,快照是救世主。vmware快照是vmware workstation裡的乙個特色功能。快照使用 1....

虛擬機器快照導致的儲存告警

背景介紹 某企業虛擬化平台使用的軟體版本為vsphere5.1,共享儲存上每個lun都是1t的空間,今天檢查時發現有乙個lun的可用空間只剩下3 於是開始尋找原因 排查步驟 1.首先使用ssh鏈結到esxi物理主機,檢查了該lun上執行的虛擬機器,發現在該lun上只執行著一台虛擬機器占用了964.2...

基於linux下的虛擬機器安裝以及快照的建立

1 虛擬機器的安裝 1 圖形版的虛擬機器安裝 virt manager 電腦 local install media iosimage or cdrom 利用映象安裝 browe browselocal 選擇映象所在位址 預設ram 1024,cpus 1 disk 9gb 修改虛擬機器名字 fin...