天天看點

詳解使用R-Studio恢複資料之1:誤分區後的恢複

本文來源于《資料重制--檔案系統原理精解與資料恢複最佳實踐》

R-Studio是一款功能比較強大的資料恢複軟體,它的特點有如下幾點:

1)    支援FAT系列、NTFS系列、UFS系列、ExtX等檔案系統。

2)    參數設定非常靈活,使恢複人員可以根據不同的具體情況進行相應的設定,以最大可能地恢複資料。

3)    支援遠端恢複,可以通過網絡恢複遠端計算機中的資料。

4)    支援分區丢失、格式化、誤删除等情況下的資料恢複。

5)    不隻支援基本磁盤,還支援動态磁盤。

6)    支援RAID恢複,可以恢複跨距磁碟區、RAID0、RAID1及RAID5的資料。

R-Studio也可以象Winhex一樣不依賴于磁盤主引導扇區的“55AA”有效簽名标志對分區表進行識别并列舉出各個分區。前面介紹MHDD時曾經提到,當某個分區的引導扇區恰好處于壞道上,導緻系統啟動時因無法讀取壞道上的資訊而啟動緩慢甚至無法進入系統時,可以使用MHDD提供的“Switchmbr”指令清除主引導記錄扇區的“55AA”标志,使作業系統将磁盤視為未初始化而不再檢索其分區表,進而可以順利地進入作業系統。然後,就可以利用R-Studio不依賴于“55AA”标志的特性恢複資料。

R-Studio可以通過對整個磁盤的掃描,利用智能檢索技術搜尋到的資料來确定現存的和曾經存在過的分區以及它的檔案系統格式。下面,我們以一個20GB容量的磁盤示範分區恢複的過程。

首先在磁盤上建立三個分區,并向其中拷入資料。運作R-Studio後,程式可以自動識别到硬碟,讀取其分區表并列舉出現存的分區。如圖10.62所示。

我們用做實驗的磁盤型号為IC25N020CSH201D2GACA20,R-Studio可以自動識别這個型号。選中該磁盤後,在右側的視窗中會給出該磁盤的型号、在系統中的裝置号以及容量等資訊。

可以看到,該磁盤分為三個分區,第一個分區為FAT32檔案系統,起始于31.5KB(63号扇區)的位置,大小為3.9GB;第二個分區為NTFS檔案系統,起始于3.9GB的位置,大小為7.8GB;最後一個分區為FAT32檔案系統,起始于11.7GB的位置,大小為6.9GB。輕按兩下列舉出的一個邏輯磁盤,就可以周遊該檔案系統并以目錄樹的形式顯示其中的目錄及檔案。如圖10.63所示,R-Studio列出了我們選擇的第一個分區的資料。

第一個目錄為中繼資料檔案目錄,其中存放的是檔案系統的管理資料,對于FAT32來講,就是DBR及FAT表。Root為根目錄,單擊Root後,可以在右側的視窗中顯示出根目錄下所有的目錄及檔案。

接下來,我們将硬碟中的分區删除後重建立立了兩個分區,以制造分區被破壞的現場。然後開始恢複。

<b>步驟1</b>  掃描磁盤。要找到原來的分區,需要對整個磁盤進行掃描。是以,必須選擇界面中的實體磁盤進行操作,而不能選擇一個邏輯分區。

在磁盤上右擊,然後在彈出的菜單中單擊Scan(掃描),如圖10.64所示。

單擊Scan後會彈出掃描設定對話框,如圖10.65所示。

在掃描設定對話框中,可以設定掃描的起始位置和大小。程式預設從磁盤的起始位置開始對整個磁盤進行掃描。如果要尋找磁盤的所有分區,不需要改動Start和Size欄中的數值。如果隻是想恢複某個分區的資料,并且知道該分區的大緻起始位置及大小的話,可以在Start(起始)欄中輸入掃描的起始位置,在Size欄中輸入掃描的範圍大小。輸入數值時,如果以扇區為機關,需要在輸入的數值後加“S”,以MB為機關則加“MB”,以GB為機關則加“GB”。

“File Systems”欄中為支援的檔案系統類型,可以支援的類型有Linux的ExtX、Windows的FAT和NTFS、蘋果機的HFS以及Unix的UFS檔案系統。單擊其後的向下箭頭可以在下拉清單中選擇想要尋找的檔案系統類型。程式預設勾選所有的類型選項,應該根據實際情況隻保留可能存在的檔案系統類型,以降低計算機的負載并提高掃描速度。在我們的示範中,隻有FAT及NTFS類型的檔案系統,是以我們可以去掉其他的類型選項,隻保留對這兩種檔案系統類型的勾選。

“Extra Search for Known File Types”選項預設被勾選,勾選此項時,程式在掃描的過程中會同時搜尋已知檔案類型的特征值,并在搜尋結果中将搜尋到的同類檔案單獨存放在一個目錄中。單擊其後的“Known File Types”按鈕可以檢視程式所支援的檔案類型種類。不過,隻有在檔案系統破壞非常嚴重,檔案的中繼資料資訊全部丢失的情況下才需要使用這種恢複方式。為了提高搜尋速度,不建議勾選此項。如果确實需要以這種方式恢複時,我們建議使用将在下一小節介紹的RAW恢複軟體Recver My Files。

設定完畢并确認無誤後,單擊Scan按鈕即開始掃描。如圖10.66所示。

掃描的時間長短根據磁盤容量的大小、接口、掃描設定以及計算機的運算速度不同而有所差異。

<b>步驟2  </b>查驗掃描結果。掃描結束後,程式即列出所有可能存在的分區,并給出每個分區的起始位置和大小。單擊某個分區後,右側的視窗中即會給出該分區的邏輯參數,如每FAT項大小、簇大小、根目錄起始簇、FAT1的起始位置及每FAT表的大小等。如圖10.67所示。

從圖中可以看到,程式共搜尋到了一個NTFS類型分區和四個FAT32分區。實際上,這四個FAT32分區隻是兩個。那麼,為什麼會出現這種情況呢?

我們先來畫一個示意圖,如圖10.68所示。

我們對磁盤原來的分區結構進行破壞并建立分區後,建立的第一個分區與原來的第一個分區都是起始于磁盤的63号扇區,但分區後我們并沒有對其進行格式化,這樣,63号扇區内就不會有任何内容。但位于磁盤69号扇區的原第一分區的DBR備份依然存在,FAT表也完好無損。程式掃描時,首先在69号扇區找到一個DBR,根據這個DBR中的參數虛拟一個分區并解釋其中的資料。這個分區就是圖10.67中顯示的起始于34.5KB位置的FAT32分區Recognized8。可想而知,這個分區以原來的DBR備份扇區做為分區的起始位置,将使用FAT表、根目錄等資料結構的位置相對地向後移6個扇區,也就不可能正确地解釋其中的資料。輕按兩下該邏輯磁盤後,程式即開始根據該分區的參數周遊整個分區,然後清單顯示找到的目錄及檔案。如圖10.69所示。

從圖10.69可以看到,雖然程式列出了該分區内的目錄和檔案,目錄名和檔案名也正确,但這隻是它根據搜尋到的目錄項列出的内容,因為扇區起始位置錯誤,根據目錄項中描述的子目錄或檔案的起始簇對其進行通路時,将無法通路到子目錄或檔案的正确起始位置。是以,子目錄名的前面顯示為問号圖示,因為對該目錄進行通路時并沒有在其中找到正确的内容,在左側視窗中單擊一個帶問号的子目錄時,在右側的視窗中将顯示為空或亂碼。

右側視窗中的檔案也一樣,右擊一個檔案,在彈出的快捷菜單中選擇View/Edit,可以在一個十六進制編輯視窗中打開該檔案,如果對該檔案類型的特征值比較熟悉的話,能夠判斷出該檔案的檔案頭是否正确。我們選擇打開了一個Word文檔,很顯示這不是一個正确的Word文檔的檔案頭(如圖10.70所示),因為Word文檔的檔案頭的前8個位元組在十六進制視窗中将顯示為“D0CF11E0A1B11AE1”。

注意:R-Studio并不是由0開始對磁盤及分區中的扇區進行編号,而是由1開始。是以,使用R-Studio與Winhex協同工作時應該注意,對于同一個扇區,在Winhex中的扇區号要比R-Studio中的扇區号小1。

程式搜尋的過程中,不隻搜尋DBR,還會搜尋FAT的起始位置。是以,它在99号扇區搜尋到一個FAT表。但并沒有DBR與該FAT表相對應(與之對應的63号扇區的DBR被清空了),是以,程式就再虛拟一個分區,因為通過FAT表的位置并不能得知原DBR的位置,是以程式就将分區的起始位置顯示為該FAT表的起始位置,這就是圖10.67中顯示的起始于49.5KB的FAT32分區Recognized7。由于這個分區的位置是正确的,是以它可以正确地顯示出其中的資料結構。如圖10.71所示。

另外兩個列出的FAT32分區是原三個分區的最後一個,與第一個分區不同的是,它的DBR扇區與DBR備份都是完好的,程式掃描到原始DBR後根據其參數虛拟一個分區,也就是圖10.67中列出的Recognized6号分區。而這個分區的參數完全正确,能夠正确連結到FAT1,是以不會将此分區的起始位置顯示為FAT表的起始位置。Recognized9号分區是程式根據掃描到Recognized6号分區的DBR備份後虛拟出的一個分區,這個分區也無法正确的解釋其中的資料。

<b>步驟3  </b>恢複資料。在要恢複的目錄或檔案上右擊,在彈出的快捷菜單中選擇Recover,或對要恢複的資料進行勾選後右擊一個目錄或檔案,在彈出的快捷菜單中選擇Recover Marked(如圖10.72所示),即可彈出儲存路徑選擇對話框,選擇好存放路徑後單擊OK按鈕即可将資料恢複至指定的位置。

本文轉自老骥伏枥51CTO部落格,原文連結:http://blog.51cto.com/sjhfml/130363 ,如需轉載請自行聯系原作者 

上一篇: C++_01_入門
下一篇: NSValue

繼續閱讀