恢復誤GHOST後的反思

恢復誤GHOST後的反思

華山劍客
 
  昨天一個網友告急:一個160G的硬盤GHOST後變成一個分區,這個硬盤是個二手盤,他買來後將它平均分爲4個分區,且都是NTFS分區,用Diskgen軟件掃到有十幾個分區,由於數據重要,不敢亂動。誤GHOST的恢復關鍵就是恢復第0扇區的分區表,我個人認爲:如果你對誤GHOST前這個硬盤的分區情況(容量及分區格式)比較清楚的話,可以用分區表恢復軟件(比如:Diskgen或分區表醫生)來完成,如果不是很清楚或用上述軟件不能恢復的話,才用WinHex手工恢復,當然不管採用什麼方式恢復,最好先對要恢復的硬盤或分區做鏡像。由於是遠程,用Diskgen恢復不方便(這個軟件要在DOS下運行),於是恢復過程如下:
  方案一:用分區表醫生恢復,結果沒有找到,鬱悶中………
  方案二:按着用WinHex來找分區表信息,在一般的資料中都說,分區表信息位於硬盤的某一個柱面的第一扇區,在我的指導下,網友按這一條件來找,但網友最後告訴我:沒有找到,讓我更加鬱悶…….,這還是第一次遇到。這時我想到WinHex中的有一個“掃描丟失的分區”這個功能,以前還沒有用過它,於是要網友用它來掃,掃描到80%左右時提示硬盤有壞道,停止掃描,這時掃到10個分區(見下圖)
 
根據網友提供的信息(160G的硬盤平均分成4個分區),37.3的分區是分析的對象,分區4、分區7、分區8和分區9都是37.3扇區,先看這4個分區的DBR,信息如下:
04分區(2594982扇區)
07分區(78140286扇區)
08分區(156280446扇區)
 09分區(234420606扇區)
分析:
1、排除04分區:原因有兩個,第一,這個分區是FAT32,網友提供的是NTFS;第二2594982扇區,如果是第二分區,那麼第一個分區只有1、2G,與網友說的不符。
2、07、08、09分區可能是原來的D、E、F分區。因爲分區格式都是NTFS,從DBR中看出每個分區的扇區數是78140096(用04A852C0換算成10進制),將扇區數換算成容量大約是37.26G
3、爲了保險起見,再向前63個扇區看分析分區表的鏈接情況,做這一步的目的是論證第二步的判斷。
第78140223扇區
第156280383扇區
第234420543扇區
對關鍵數據進行分析:
第78140223扇區: 63       78140097
         78140160   78140160
第156280383扇區:63      78140097
         156280320  78140160 
第234420543扇區:63         78140097
分析分區表的鏈接情況:第78140223扇區中的63+78140097=78140160,說明這個分區是這個硬盤的擴展分區的第一個邏輯分區,再分析這三個分區表的信息及鏈接情況,證明第二步的判斷是正確的,分析結果如下圖所示:
 
重建分區表
分析正確後,現在關鍵就是重建第0扇區的分區表(我是根據分區表信息重建分區表,不是根據DBR,原因後面有說明),關鍵的數據是:
63   78140160
78140223  234420480(156280320+78140160=234420480)
最後用PTEDIT32(分區表編輯器)重建分區表,結果如下圖:
用WinHex看到的效果如下圖:
恢復後整個硬盤的分區表情況如下圖:
重建分區表後,用PTEDIT32順利打開後面的三個分區,然後再用WinHex打開這個硬盤的幾個分區,能看到裏面的內容(做這一步的目的是最後論證一下數據恢復是否成功),重新啓動電腦,數據恢復成功!!
 
說明:這個數據恢復的難度其實並不大,我寫這個案例的目的是想和大家探討一下這個案例中有些數據的特殊性(也許是我太孤陋寡聞了!)及分區表恢復軟件的恢復原理問題,錯誤之處,請各位指正!!
1、在《數據恢復(第二版)》中好像說過,分區表的信息在硬盤的某一個柱面的第一個扇區中(一時沒有找到這段文字,以後找到再作說明),通過很多次觀察發現是這樣的,這還是第一次發現在硬盤的某一個柱面的第63扇區中,後來詢問了那位網友是用什麼軟件分區的區,他說是一般的Windows xp安裝碟,在安裝時提示你安裝系統到哪個分區時,選擇刪除當前分區,每個分區都選擇刪除當前分區,最後只有一個分區了,也就是大分區了,然後選擇創建分區,160G硬盤,但顯示149G,用149G除以4等於37.3G,37.3乘以1024 =  ......MB,這樣把一個硬盤重新分的4個區。大家可以看到後面三個分區表前面的字節不是00,因爲原來這個位置有數據。
2、有的教程中提到根據DBR信息重建分區表,我做過多次觀察,發現分區表中描述一個分區的扇區總數和DBR中描述的這個分區的扇區總數不完全一致(已排除前面隱藏的63個扇區及NTFS分區中DBR備份的一個隱藏扇區的因素!!這個案例中描述的是一樣的。有興趣的朋友可以多觀察身邊的幾個硬盤看是不是這樣的),不一致的原因可能在格式化時產生剩餘扇區有關,一個硬盤在分區時有剩餘扇區產生,同樣的道理,一個分區在格式化時也有可能出現分區的剩餘扇區(這是我自己命的名,呵呵!!比如一個FAT32的分區,如果在格式化時DBR中的“保留扇區數”和“每簇扇區數”用不同的值,就有可能出現剩餘扇區,這只是我的一個猜測)。所以我一般重建分區表時一般是以分區表的信息重建,而不是根據DBR,DBR只是一個參考,用DBR的位置推算分區表的位置,然後判斷這個分區是主分區還是擴展分區,最後決定如何在第0扇區中重建分區表。
3、對分區表恢復軟件恢復原理的猜測:網友說用Diskgen軟件掃到有十幾個分區,這和用WinHex中的有一個“掃描丟失的分區”找到的結果一樣,但分區表醫生沒有找到,可能是分區表醫生是通過尋找硬盤某柱面的第一個扇區的55AA來恢復的,Diskgen和WinHex中 “掃描丟失的分區”是通過找每一個扇區的55AA。可以從這些軟件恢復分區表所需要的時間來證實我的猜想。
                  2007年11月23日華山劍客寫於湖北隨州

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