服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境:
某品牌服務(wù)器中4塊SAS硬盤組建RAID5。
boot分區(qū)+LVM卷+swap分區(qū)(按照先后順序),LVM卷中劃分了一個reiserfs文件系統(tǒng),作為根分區(qū)。
北亞數(shù)據(jù)恢復(fù)——reiserfs文件系統(tǒng)恢復(fù)
服務(wù)器故障:
服務(wù)器在運行過程中系統(tǒng)由于未知原因癱瘓,用戶重裝服務(wù)器系統(tǒng)后發(fā)現(xiàn)整個RAID邏輯卷變成了:boot分區(qū)+swap分區(qū)+LVM卷(按照先后順序),LVM卷中文件系統(tǒng)位置有個空的reiserfs超級塊。用戶聯(lián)系我們數(shù)據(jù)恢復(fù)中心,要求恢復(fù)的數(shù)據(jù)就是原來LVM卷中reiserfs文件系統(tǒng)里的所有的數(shù)據(jù):數(shù)據(jù)庫、網(wǎng)站程序與網(wǎng)頁、OA系統(tǒng)內(nèi)的辦公文檔。
服務(wù)器數(shù)據(jù)恢復(fù)過程:
1、通過對全盤reiserfs樹節(jié)點之間的關(guān)聯(lián)確定原來reiserfs分區(qū)的位置。經(jīng)過檢測發(fā)現(xiàn)原來存儲數(shù)據(jù)的reiserfs文件系統(tǒng)的前2G數(shù)據(jù)已經(jīng)被覆蓋,北亞數(shù)據(jù)恢復(fù)工程師推斷這種情況應(yīng)該是管理員重裝系統(tǒng)時錯誤地初始化了分區(qū)結(jié)構(gòu),系統(tǒng)安裝后無法導(dǎo)入LVM卷,于是就執(zhí)行了reiserfsck操作試圖進(jìn)行修復(fù)。
因為reiserfs文件系統(tǒng)對文件系統(tǒng)里所有的文件(含目錄)線性化后,再以文件key生成B+樹,樹不斷增加節(jié)點,導(dǎo)致樹的結(jié)構(gòu)整體拉展后向整個磁盤的數(shù)據(jù)區(qū)做平滑遷移,所以頂級節(jié)點通常不會放在文件系統(tǒng)的最前面。因為根目錄的文件KEY號通常是最小的,所以從空間上看,reiserfs文件系統(tǒng)的前2G數(shù)據(jù)存儲的應(yīng)該是從根起始路徑最近的key節(jié)點,由于用戶數(shù)據(jù)目錄層次較深,節(jié)點存在的可能性很高。由于前2G數(shù)據(jù)已經(jīng)被覆蓋無法恢復(fù),希望用戶數(shù)據(jù)不要也被覆蓋。因為reiserfs文件系統(tǒng)前面對整個樹的索引全丟失,加上reiserfs的樹概念設(shè)計抽象,重搭建樹會很困難。
2、通過北亞自主研發(fā)程序?qū)υ募到y(tǒng)所在區(qū)域進(jìn)行key節(jié)點掃描并將所有節(jié)點導(dǎo)出。
3、然后通過北亞自主研發(fā)工具對所有葉節(jié)點重新排序、過濾(去掉之前刪除文件丟棄的節(jié)點),重新生成二級、三級、四級等葉節(jié)點。
4、選擇分區(qū)前面2G空間作為新樹的結(jié)構(gòu)區(qū)并生成對應(yīng)地址信息。
5、目錄命名問題解決方法:如遇到原樹路徑某節(jié)點丟失的情況,對其使用自定義的key節(jié)點編號命名;如無法確定其父目錄,暫加入到/otherfiles下。生成樹索引信息并寫入特定位置,再根據(jù)這些信息生成超級塊并設(shè)置clear標(biāo)志。
6、在suse虛擬機(jī)下創(chuàng)建快照并掛載修復(fù)好的卷,已經(jīng)可以看到文件了。在修復(fù)用的suse虛擬機(jī)下,掛載用于copy數(shù)據(jù)的目標(biāo)硬盤,mkfs后將所有數(shù)據(jù)cp到目標(biāo)盤。
7、用戶通過find命令整理所需數(shù)據(jù),修正部分目錄文件位置與名稱。
8、按大小與文件頭標(biāo)志查找部分丟失的散文件,找到后移動及重命名。
由于reiserfs的樹的抽象和程序調(diào)試,整個恢復(fù)工作異常復(fù)雜。但是經(jīng)過數(shù)據(jù)恢復(fù)工程師和用戶的努力,所有重要數(shù)據(jù)都被找到。
審核編輯:湯梓紅
-
服務(wù)器
+關(guān)注
關(guān)注
13文章
9716瀏覽量
87352 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
640瀏覽量
18026
發(fā)布評論請先 登錄
服務(wù)器數(shù)據(jù)恢復(fù)—重裝系統(tǒng)導(dǎo)致XFS文件系統(tǒng)分區(qū)丟失的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—Linux系統(tǒng)服務(wù)器崩潰的數(shù)據(jù)恢復(fù)案例
虛擬化數(shù)據(jù)恢復(fù)—VMware虛擬化環(huán)境下重裝系統(tǒng)導(dǎo)致服務(wù)器數(shù)據(jù)丟失的數(shù)據(jù)恢復(fù)

服務(wù)器數(shù)據(jù)恢復(fù)—如何預(yù)防服務(wù)器故障與恢復(fù)服務(wù)器數(shù)據(jù)!
服務(wù)器數(shù)據(jù)恢復(fù)—Zfs文件系統(tǒng)服務(wù)器數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—服務(wù)器硬盤燈閃黃燈的數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—如何讓ZFS文件系統(tǒng)數(shù)據(jù)“起死回生”?

服務(wù)器數(shù)據(jù)恢復(fù)—ZFS文件系統(tǒng)下RAIDZ數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列+reiserfs文件系統(tǒng)數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—異常斷電導(dǎo)致linux系統(tǒng)無法啟動的數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—EXT3文件系統(tǒng)下誤刪除數(shù)據(jù)的恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—V7000存儲NTFS文件系統(tǒng)數(shù)據(jù)恢復(fù)案例

評論