Linux系統下誤刪除虛擬機數據恢復成功案例

一、虛擬機故障環境描述

客戶的物理機器操作系統為Linux系統,文件系統為EXT4文件系統。其上的KVM虛擬機被刪除,每台虛擬機包含一個qcow2格式的磁碟文件,和一個大小約為1.2T的raw格式的磁碟文件,主要需恢復raw格式的磁碟文件。客戶已自行備份。

虛擬機1:主資料庫伺服器

虛擬磁碟:10G系統盤(qcow2)+1.2T數據盤(raw,主要恢復)

文件系統:EXT4

主要數據:MySQL資料庫

虛擬機2:備份資料庫伺服器

虛擬磁碟:10G系統盤(qcow2)+1.2T數據盤(raw,主要恢復)

文件系統:EXT4

主要數據:MySQL資料庫

虛擬機3:代碼伺服器

虛擬機盤:10G系統盤(qcow2)+1.2T數據盤(raw,主要恢復)

文件系統:EXT4

主要數據:程序代碼

二、虛擬機數據恢復過程

1、分析EXT4文件系統,定位被刪除虛擬機磁碟文件的節點位置;

2、獲取磁碟文件殘留的索引信息;

3、校驗殘留索引信息的正確性,修復破壞不嚴重的索引;

圖為獲取的索引等信息:

4、修復完成後,解析殘留的各級索引,從虛擬機所在的卷中提取虛擬磁碟文件;

5、根據虛擬磁碟文件的提取情況,獲取卷中未被索引到的自由空間;

6、校驗提取出的磁碟文件的正確性與完整性;

7、從自由空間中獲取有效信息,嘗試對虛擬磁碟文件進行修補(如節點,目錄項,資料庫頁等信息)。

圖為提取出的自由空間:

三、數據恢復結果

1、由於索引丟失,提取出的虛擬磁碟文件並不完整,針對資料庫伺服器,資料庫文件有丟失的情況,可以從自由空間中獲取資料庫頁去對資料庫文件進行修補,但由於部分頁所在區域被覆蓋佔用,只能盡量多的去補頁;

2、對於存放程序代碼的伺服器中的節點和目錄項丟失的情況,若節點或目錄項有殘留,可以嘗試去補齊節點和目錄項。但發現部分文件的節點和目錄項同時丟失,根據節點和目錄項之間相關聯的特性,這種情況下無法補齊。另根據程序代碼文件的特性,不具備一定的規律性,若其數據區丟失,無法補齊。

圖為恢復出的部分目錄結構:

四、數據驗證

在儘可能的嘗試對虛擬磁碟文件及其中的資料庫文件修補之後,由客戶對數據進行驗證。數據有部分丟失,無法恢復,但整體還可以接受,數據恢復有效。


推薦閱讀:

恢復Mac上刪除的單反SD卡圖片
iPhone如何從iTunes恢複數據?
u盤文件或目錄損壞且無法讀取免費數據修復方法
模電工程師的三件法寶:差分信號、時鐘數據恢復、信道均衡

TAG:數據恢復 | 虛擬機 | 伺服器 |