1. 程式人生 > >RAID5重組與資料恢復的思路方法學習

RAID5重組與資料恢復的思路方法學習

環境是在2003下自己搭建的,5塊5G的硬碟組成的RAID5,把每塊硬碟單獨做了映象用來分析,分別是1.img—5.img 。首先用winhex開啟5個映象,如下圖所示。

分別檢視5個映象的0號扇區,發現都是MBR,經過計算分割槽大小,全是5G,也就是單個硬碟的大小。所以都不是RAID5邏輯盤的有效MBR。在向下搜尋“55AA”,在1.img的63號扇區發現了一個DBR,如圖

其他映象裡搜尋的扇區數比較大,放棄了。1.img 63號扇區的DBR經計算分割槽大小正好是20G,和RAID5邏輯盤的大小相符,所以可以認為是RAID5邏輯盤的有效DBR,這樣就確定了raid5起始扇區在1.img的63號扇區。下面來計算一下塊大小,上圖中可以看到,DBR扇區的下一個扇區正好是ntldr的的起始區域,說明這個扇區和DBR扇區是連續的,所以塊大小大於或等於128。下面在跳轉到1.img的127號扇區看一下,是不是和128號扇區有連續性。

如上圖,這個地方看不出來有沒有連續性。那麼只能找到$MFT的檔案記錄再來分析了。根據DBR中的描述,$MFT起始於分割槽的786432號簇,也就是6291456號扇區,這樣用6291456/(5-1)+63=1572927就是mft的絕對扇區號,就算有誤差也不會很大。下面把所有映象跳轉到1572927扇區,如圖

1.img

 

2.img

 

3.img

 

4.img

 

5.img

 

在5.img發現了$MFT的檔案記錄,1.img,2.img和3.img也都是檔案記錄。4.img的同一扇區應該是校驗。下邊對比檔案記錄號如下:1572927號扇區1.img是C0 00 00 00      1922.img是80 00 00 00      1283.img是40 00 00 00       645.img是00 00 00 00        04.img是校驗這樣塊大小就知道了,64*2=128 下面計算一下盤序和結構,再向下跳轉128扇區看一下,1572927+128=1573055 ,經過對比,1.img應該是校驗。再向下跳轉128扇區,以此類推,校驗快的分佈就出來了。如圖

 

通過雨荷論壇下載的RAID5盤序計算程式很快算出了盤序:1.4.5.3.2 。左結構。下面計算一下是同步還是非同步,把上圖整理一下,如圖

 

繼續整理

 

1573183號扇區的4個數字為檔案記錄號。計算同步還是非同步,只需要查詢768號檔案記錄是在1.img的1573311號扇區還是在2.img的1573311號扇區。如果在1.img的1573311號扇區,說明是左非同步,如果在2.img的1573311號扇區,說明是左同步。查詢後,768號檔案檔案記錄在2.img。如下圖

 

這樣,所有引數都計算出來了:Raid5的起始扇區63號扇區,塊大小128扇區盤序1.4.5.3.2資料結構左同步下面重組資料,如圖

 winhex重組:

 

    

 R-Studio重組:

   


恢復成功,資料經驗證沒有問題。  今天又試驗了6個盤的raid5重組,和單數盤的的區別在於校驗塊的判斷上覆雜了一些,通過對比30屬性確定了校驗塊在哪個盤上,確定了盤序和迴圈方向,以及同步還是非同步,最終重組成功。特此寫出來共享一下。呵呵