服務(wù)器數(shù)據(jù)恢復(fù)環(huán)境&故障:
一臺(tái)服務(wù)器中有5塊硬盤,其中的4塊組建了一組RAID5陣列,剩下一塊盤作為熱備盤(Hot-Spare)使用。服務(wù)器操作系統(tǒng)為linux,應(yīng)用系統(tǒng)為構(gòu)架于oracle數(shù)據(jù)庫的一個(gè)oa。
raid5陣列中一塊盤離線,但熱備盤未自動(dòng)激活rebuild。直到另外一塊盤離線,RAID崩潰。
由于oracle已經(jīng)不再對(duì)本案例中的oa系統(tǒng)提供后續(xù)支持,用戶方要求盡可能恢復(fù)數(shù)據(jù)和操作系統(tǒng)。經(jīng)過檢測(cè)發(fā)現(xiàn)熱備盤完全沒有啟用,硬盤無明顯物理故障,無明顯同步表現(xiàn)。
服務(wù)器數(shù)據(jù)恢復(fù)過程:
1、將故障服務(wù)器中所有硬盤做好標(biāo)記后取出,以只讀方式將所有硬盤進(jìn)行扇區(qū)級(jí)別完整鏡像,鏡像后發(fā)現(xiàn)后離線的硬盤有10-20個(gè)壞扇區(qū),其余磁盤,均無壞道。鏡像完成后將所有硬盤根據(jù)標(biāo)記按照原樣還原到原服務(wù)器中。后續(xù)的數(shù)據(jù)分析和數(shù)據(jù)恢復(fù)操作都基于鏡像文件進(jìn)行,避免后續(xù)操作對(duì)原始數(shù)據(jù)造成二次破壞。
2、基于鏡像文件分析raid結(jié)構(gòu),獲取到盤序、塊大小、backward parity(Adaptec)等raid結(jié)構(gòu)相關(guān)信息。
北亞企安數(shù)據(jù)恢復(fù)—服務(wù)器數(shù)據(jù)恢復(fù)
3、驗(yàn)證數(shù)據(jù)發(fā)現(xiàn)大小200M以上的壓縮包解壓無報(bào)錯(cuò),確定結(jié)構(gòu)正確。
4、按照此結(jié)構(gòu)虛擬重組RAID到一塊單硬盤上,打開文件系統(tǒng)無明顯報(bào)錯(cuò)。
5、確定備份包安全的情況下,經(jīng)用戶方同意后,對(duì)原盤重建RAID(重建時(shí)已經(jīng)用全新硬盤更換發(fā)現(xiàn)壞扇區(qū)的硬盤)。將恢復(fù)好的單盤用USB方式接入故障服務(wù)器,再用linux SystemRescueCd啟動(dòng)故障服務(wù)器,之后通過dd命令進(jìn)行全盤回寫。
6、回寫后啟動(dòng)操作系統(tǒng)。無法正常進(jìn)入操作系統(tǒng)并且報(bào)錯(cuò)。
懷疑報(bào)錯(cuò)信息中提到的文件權(quán)限有問題。使用SystemRescueCd重啟后檢查,發(fā)現(xiàn)此文件時(shí)間,權(quán)限,大小均有明顯錯(cuò)誤,顯然節(jié)點(diǎn)損壞。
7、重新分析重組數(shù)據(jù)中的根分區(qū),定位出錯(cuò)的目錄,發(fā)現(xiàn)問題是由硬盤壞道引起的。
使用其他數(shù)據(jù)盤盤,針對(duì)發(fā)現(xiàn)壞道的硬盤的損壞區(qū)域進(jìn)行xor補(bǔ)齊。補(bǔ)齊后重新校驗(yàn)文件系統(tǒng),依然有錯(cuò)誤。再次檢查inode表,發(fā)現(xiàn)壞道的硬盤上的損壞區(qū)域有部分節(jié)點(diǎn)表現(xiàn)下圖中的55 55 55部分。
北亞企安數(shù)據(jù)恢復(fù)—服務(wù)器數(shù)據(jù)恢復(fù)
8、雖然節(jié)點(diǎn)中描述的uid還正常存在,但屬性、大小、最初的分配塊全部是錯(cuò)誤的。按照所有可能進(jìn)行分析,確定無法找回此損壞節(jié)點(diǎn)。要么修復(fù)此節(jié)點(diǎn),或者復(fù)制一個(gè)相同的文件過來。
對(duì)所有可能有錯(cuò)的文件,通過日志確定原節(jié)點(diǎn)塊的節(jié)點(diǎn)信息,再做修正。
修正后重新dd根分區(qū),執(zhí)行fsck命令進(jìn)行檢測(cè),依然報(bào)錯(cuò)。
北亞企安數(shù)據(jù)恢復(fù)—服務(wù)器數(shù)據(jù)恢復(fù)
9、根據(jù)提示,在系統(tǒng)中發(fā)現(xiàn)有多個(gè)節(jié)點(diǎn)共用同樣的數(shù)據(jù)塊。按此提示進(jìn)行底層分析,發(fā)現(xiàn)存在節(jié)點(diǎn)信息的新舊交集。
10、北亞企安數(shù)據(jù)恢復(fù)工程師按照節(jié)點(diǎn)所屬的文件進(jìn)行區(qū)別。清除錯(cuò)誤節(jié)點(diǎn)后,再次執(zhí)行fsck命令檢測(cè),依然出現(xiàn)報(bào)錯(cuò),但數(shù)量已經(jīng)很少。根據(jù)提示,發(fā)現(xiàn)這些節(jié)點(diǎn)大多位于doc目錄下,不影響系統(tǒng)啟動(dòng),于是直接fsck命令強(qiáng)行修復(fù)。
修復(fù)完成后重啟系統(tǒng),成功進(jìn)入桌面。啟動(dòng)數(shù)據(jù)庫服務(wù)和應(yīng)用軟件,一切正常,無報(bào)錯(cuò)。數(shù)據(jù)庫數(shù)據(jù)恢復(fù)工作完成。
審核編輯 黃宇
-
服務(wù)器
+關(guān)注
關(guān)注
13文章
9795瀏覽量
87988 -
數(shù)據(jù)恢復(fù)
+關(guān)注
關(guān)注
10文章
650瀏覽量
18155
發(fā)布評(píng)論請(qǐng)先 登錄
raid5數(shù)據(jù)恢復(fù)—Raid陣列重建后如何恢復(fù)原陣列的數(shù)據(jù)?
服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列多塊硬盤離線導(dǎo)致EMC存儲(chǔ)不可用的數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列中硬盤壞道導(dǎo)致陣列崩潰的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—Raid5陣列熱備盤上線失敗的數(shù)據(jù)恢復(fù)案例
服務(wù)器數(shù)據(jù)恢復(fù)—RAID5陣列兩塊硬盤離線崩潰,數(shù)據(jù)如何起死回生?

服務(wù)器數(shù)據(jù)恢復(fù)—RAID5陣列熱備盤同步數(shù)據(jù)失敗的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列崩潰導(dǎo)致上層lun無法正常使用的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—華為OceanStor存儲(chǔ)中RAID5陣列數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—用5盤RAID5陣列中的4塊盤重建RAID5陣列后如何恢復(fù)原始數(shù)據(jù)?
服務(wù)器數(shù)據(jù)恢復(fù)—RAID5陣列硬盤離線但熱備盤未激活的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—Raid5陣列兩塊硬盤指示燈亮黃色的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列熱備盤上線同步失敗的數(shù)據(jù)恢復(fù)案例

服務(wù)器數(shù)據(jù)恢復(fù)—雙循環(huán)RAID5陣列崩潰,數(shù)據(jù)如何恢復(fù)?
服務(wù)器數(shù)據(jù)恢復(fù)—不當(dāng)操作導(dǎo)致raid5陣列數(shù)據(jù)無法恢復(fù)的案例
服務(wù)器數(shù)據(jù)恢復(fù)—raid5陣列熱備盤未全部成功啟用的數(shù)據(jù)恢復(fù)案例

評(píng)論