服務(wù)器數(shù)據(jù)恢復(fù)-斷電導(dǎo)致ext4文件系統(tǒng)分區(qū)無法訪問的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境:
一臺服務(wù)器掛載一臺存儲設(shè)備,存儲中劃分一個Lun;服務(wù)器操作系統(tǒng)是Linux centos,EXT4文件系統(tǒng)。

意外斷電導(dǎo)致服務(wù)器操作系統(tǒng)無法啟動,系統(tǒng)在修復(fù)后可以正常啟動,但是掛載的分區(qū)無法正常訪問。管理員對這個分區(qū)執(zhí)行了fsck修復(fù),修復(fù)后文件系統(tǒng)可以正常訪問,但是發(fā)現(xiàn)部分文件丟失。經(jīng)過查找在lost+found文件夾中發(fā)現(xiàn)缺失的部分文件,但是文件名稱已經(jīng)被改變。
將故障存儲中的lun以只讀模式映射到一臺windows server服務(wù)器上,將整個lun以扇區(qū)的方式鏡像到該服務(wù)器的空間,后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進(jìn)行,避免對原始數(shù)據(jù)造成二次破壞。
基于鏡像文件分析該lun的底層數(shù)據(jù),發(fā)現(xiàn)意外斷電導(dǎo)致文件系統(tǒng)中的文件的目錄項(xiàng)被破壞,這種破壞不會影響實(shí)際數(shù)據(jù),只是文件的目錄項(xiàng)被破壞,可以通過人工進(jìn)行修復(fù)。但是接下來的管理員對文件系統(tǒng)執(zhí)行fsck修復(fù)操作導(dǎo)致?lián)p壞的目錄項(xiàng)修復(fù)失敗,以目錄節(jié)點(diǎn)號命名放到lost+found文件夾下,這種情況下目錄項(xiàng)對應(yīng)的數(shù)據(jù)區(qū)索引會被清,但是也不會影響丟失文件的實(shí)際數(shù)據(jù)。
由于ext4文件系統(tǒng)文件丟失會導(dǎo)致文件的節(jié)點(diǎn)信息被清除,無法根據(jù)文件的節(jié)點(diǎn)信息恢復(fù)數(shù)據(jù),只能通過將丟失文件的目錄項(xiàng)節(jié)點(diǎn)號和lost+found文件夾里的文件名稱相配的方法進(jìn)行處理。lost+found文件夾里的文件是以該文件的目錄項(xiàng)節(jié)點(diǎn)號命名的,將目錄項(xiàng)節(jié)點(diǎn)號提取出來和lost+found文件夾里的文件名稱進(jìn)行匹配,就可以還原之前的目錄結(jié)構(gòu)。

服務(wù)器數(shù)據(jù)恢復(fù)過程:
1、按照上述分析思路進(jìn)行底層分析,根據(jù)EXT4的文件系統(tǒng)結(jié)構(gòu)信息,在底層空間中掃描符合的目錄項(xiàng)的區(qū)域,并統(tǒng)計(jì)其數(shù)量和計(jì)算目錄項(xiàng)的節(jié)點(diǎn)號。
2、根據(jù)磁盤中文件系統(tǒng)的信息,北亞企安數(shù)據(jù)恢復(fù)工程師將這些掃描到的目錄項(xiàng)節(jié)點(diǎn)號進(jìn)行整合,并將掃描到的目錄項(xiàng)節(jié)點(diǎn)號記錄到數(shù)據(jù)庫。
3、將lost+found文件夾里面的文件記錄號和數(shù)據(jù)庫里面的記錄號進(jìn)行匹配。?
4、匹配完成后批量恢復(fù)數(shù)據(jù),經(jīng)過用戶方工程師驗(yàn)證沒有發(fā)現(xiàn)問題。本次數(shù)據(jù)恢復(fù)工作完成。
