Linux文件系統誤裝入到Ocfs2文件系統的數據捲上的恢復過程

一、什麼是Linux文件系統

Linux文件系統中的文件是數據的集合,文件系統不僅包含着文件中的數據而且還有文件系統的結構,所有Linux用戶和程序看到的文件、目錄、軟連接及文件保護信息等都存儲在其中。Linux是一個性能穩定、功能強大、效率高的操作系統。它在功能特性方面與Unix系統相似,同時又具有多任務、多用戶、多平臺等若干特性。

二、故障描述

由於用戶誤操作,將Linux文件系統誤裝入到Ocfs2文件系統的數據捲上,導致原始Ocfs2文件系統被新格式化Ext4文件系統,據對兩種文件系統格式化方式的瞭解,Ext4文件系統每隔幾百兆會寫入文件系統的原始信息的特性,用戶的數據可能受到一定程度的破壞。

三、備份數據

1、將存儲以只讀模式映射給備份服務器。

2、使用dd,Winhex等專業備份工具將映射到備份服務器中的數據做全部鏡像。

3、做完全部鏡像後,將所有存儲配置及鏈路還原至初始狀態,之後數據恢復操作均不對原始硬盤做任何操作

圖一:

四、故障分析

1、分析ocfs文件系統結構

找到ocfs2文件系統的超級塊,通過分析超級塊得出該文件系統的一些基本結構信息,然後通過客戶給出的虛擬磁盤文件名稱,查找到虛擬磁盤文件的目錄項,繼而找到所對應的所有一級索引項和二級索引項,並利用自主開發的文件系統解析程序,對已備份的數據進行文件系統解析。ocfs2文件系統的索引項結構如下。

圖二:

Linux文件系統誤裝入到Ocfs2文件系統的數據捲上的恢復過程

2、修復文件系統

修復損壞的文件系統,對原始Ocfs2文件系統做一致性檢測,並對損壞的區域進行人工修復。

五、恢復數據

1、生成數據

利用自主開發的針對Ocfs2不完整文件系統的解析工具對已修復的Ocfs2文件系統進行解析。並根據文件系統分析的結果,編寫對應的數據提取程序,利用程序最大程度的恢復每一個虛擬磁盤文件,並對恢復的每一個虛擬磁盤文件進行一致性檢測。

2、文件檢測與修復

對恢復虛擬磁盤文件進行解析,驗證虛擬磁盤文件是否有錯誤,並嘗試修復。恢復其中的用戶文件,對已恢復的用戶文件進行一致性檢測,並嘗試修復損壞的文件。

六、驗證數據

1、驗證虛擬機

針對用戶比較重要的虛擬機做驗證,發現虛擬機大多都可以開機,可以到登陸界面。有部分虛擬機開機藍屏或開機檢測磁盤,但是進過光盤修復之後都可以啓動。

另外發現一臺虛擬機磁盤文件恢復之後,通過解析發現該虛擬機中沒有數據,繼續對該虛擬磁盤文件進行分析,發現該文件索引項存在,但是索引結構並不多,數據量也很少,有可能存在認爲清零或修改的情況,也可能虛擬機原本就沒有多少數據。

2、驗證數據庫

針對重點虛擬機中的數據庫做驗證,發現數據庫都正常。部分數據庫可能與應用程序對接有的一定問題,經用戶聯繫應用程序原廠的工作人員,經過修復之後,數據庫都可以正常使用。

Linux文件系統誤裝入到Ocfs2文件系統的數據捲上的恢復過程

七、移交數據

由於時間緊迫,先使用專業工具“UFS”依次導出ocfs2中的虛擬機。然後安排工程師將R510服務器上的虛擬磁盤數據帶到用戶現場。

在現場使用網線將R510服務器接入到用戶內部的網絡當中,然後通過NFS共享,將虛擬機磁盤文件上傳到用戶的服務器上,然後通過ovm虛擬機管理工具進行虛擬機掛載。由於虛擬機數量不是很多,大小也不是很大,比較快的完成了數據移交。

八、數據恢復總結

整個數據恢復的過程中,對ocfs2文件結構的分析佔用了比較多的時間,根據ext4文件系統格式化的特性,Ext4文件系統每隔幾百兆會寫入文件系統的原始信息,對用戶的數據造成了很小的損壞,數據恢復完成後用戶對我們的恢復結果表示認同。

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