1、剩余扇區(qū)是什么:剩余扇區(qū)有分區(qū)內(nèi)的剩余扇區(qū)和整個磁盤的剩余扇區(qū)。 先說分區(qū)內(nèi)的扇區(qū): 描述磁盤容量的單位是扇區(qū),分區(qū)內(nèi)部又是采用簇來管理的。通常情況下,扇區(qū)的容量是512b,簇的單位容量大于等于扇區(qū)的容量。以具體事例來講,一個7gb的Fat32分區(qū),其簇的大小是4k,相當于8個扇區(qū),而分區(qū)內(nèi)的存儲單位是4k,分區(qū)的扇區(qū)總數(shù)如果不是8的倍數(shù),那余下來的扇區(qū)便是剩余扇區(qū)了。 整個磁盤的剩余扇區(qū)與上述原理相似,不同的是,每個分區(qū)的結(jié)束必須以254頭,63扇為結(jié)束(也應該是老的磁盤管理模式留下的弊端吧!雖然分區(qū)內(nèi)是以線性邏輯扇區(qū)為首要參數(shù)的)也就是說,如果磁盤的總?cè)萘空梅植粌粢粋€柱面的容量(1*254*63*512b=8193024b),那么,剩下的容量便是整個磁盤的剩余扇區(qū)了,其最大也就是大約7.8m。這也是通常情況下,分區(qū)的最小容量是7.8m,分區(qū)容量是8193024b倍數(shù)的原因。(簡圖并未畫出整個磁盤的剩余扇區(qū),大家理解吧!) 2、對于Fat32的保留扇區(qū)的數(shù)目,一般來說是32個,但也不肯定是,有時候可能會是38個或其他數(shù)目,當然也可以在dbr中的bpb(bios parameter block)參數(shù)表中更改,后面要講到在數(shù)據(jù)恢復中了解他的重要性。(dbr的參數(shù)說明到數(shù)據(jù)恢復網(wǎng) 找找) 3、在小容量的磁盤分區(qū)中也存在Fat16的分區(qū)格式,原理嗎?和軟盤的存儲原理相,見數(shù)據(jù)恢復網(wǎng) “反黑行動之數(shù)據(jù)恢復”。 下面我們進入實戰(zhàn): 第一種情況,分區(qū)被格式化。如果格式化以后,當然可以用現(xiàn)成的數(shù)據(jù)恢復軟件來恢復,但軟件畢竟是軟件,并不能應對多變的復雜的情況。而手工不同,如果對磁盤結(jié)構(gòu)了解,是可以最大程度的恢復的。我們拋開數(shù)據(jù)恢復軟件來看和通過手工來恢復被格式化的磁盤分區(qū)。 對于Fat格式的分區(qū)(包括Fat16),format命令會重建dbr扇區(qū),清空兩個Fat表,清空分區(qū)的第一個簇(存放原根目錄)。不管是快速格式化還是完全格式化(快速格式化和完全格式化的區(qū)別在于他們是否對所涉及到的磁盤扇區(qū)進行檢測掃描,清除上面的數(shù)據(jù)事都要做得)。對于dbr,分區(qū)只要正確格式化就會生成正確的dbr,故而重點是Fat表和原根目錄(如果原根目錄大于一個簇,這僅僅是第一個簇,為了方便,以后就以原根目錄稱)的問題。如果你格式花前備份了此分區(qū)的Fat表和根目錄。那么,只要將dbr初始化,恢復Fat表和根目錄即可完全恢復數(shù)據(jù)。不過,既然是被格式化,那一定沒有Fat表和根目錄的備份(廢話!?。。?。繼續(xù): 先說根目錄,跟目錄的第一扇一但清空,別無法找回了。所以,格式化前存儲在根目錄的文件就會因其在第一扇存儲的文件特征描述表丟失而很難找回了,除非你知道文件中包含的特征字符串,根據(jù)其在整個分區(qū)內(nèi)查找,又確定文件的大小,而恰好要恢復的文件又是在磁盤內(nèi)連續(xù)存儲的。 再說Fat表,F(xiàn)at表的丟失對交叉存儲的文件來說是幾乎毀滅的災難。原則上如果丟失,就只能恢復從文件第一簇開始的連續(xù)幾簇了。但一般如要恢復的文件較小或分區(qū)并未經(jīng)過頻繁的文件刪增的話, 還是有希望的。 手動填寫Fat表是不現(xiàn)實的,我們只好先讓原來的目錄結(jié)構(gòu)重現(xiàn),再想辦法。Windows的磁盤文件格式是tree型的,格式化只是將tree的根折,在根折斷以后,其實就象生成了多顆tree(想想數(shù)據(jù)結(jié)構(gòu))。如果我們要恢復的文件全部位于一個子目錄當中。那好了,我們只要將這顆子樹的樹根放入原tree的根位置上,即可生成一顆新樹。推介使用WinHex,下面以WinHex為例具體而言,首先,若磁盤未格式化或格式化格式不太正確,先格式化,以生成可參照的dbr和Fat表。接著我們在分區(qū)中尋找相關(guān)的字符串來確定此子樹的"根"位置。,如記得原目錄中有sjhfnet.txt的文件(選擇其他目錄沒有或很少有此文件名的文件),可在整個分區(qū)內(nèi)查找"sjhfnet txt",再根據(jù) 相關(guān)特征確定。這時候注意一下,我們需要目錄中提供的"."目錄來推測原分區(qū)的一些特性,主要是dbr中的bpb參數(shù),如保留扇區(qū)的數(shù)目。(一般是不不會錯的,但如果有那怕一個扇區(qū)的出入,整個分區(qū)中目錄的映射將不能套用,還是看看吧!),是不是要問,"."目錄是什么?學過dos的人都知道,目錄"."表當前所在目錄,".."表上級目錄,在32個子節(jié)的目錄項中,包含有和其他目錄項相同的特征,我們關(guān)心目錄的位置(在原分區(qū)格式的第幾個簇中),他應該是等于他所在的簇號的!也就是看一下偏移量為15h 14h 1bh 1ah的數(shù)值是否等于現(xiàn)在簇號。在WinHex中格式化后的磁盤可清楚的列出當前簇的簇號,可比較一下(可能需要16進制與10進制的轉(zhuǎn)換)。 相同不說了,如果不相同,也應該相差不多。計算一下相差的簇的數(shù)目,然后在本分區(qū)dbr扇區(qū)的0eh~0fh作相應增減,是保留扇區(qū)的數(shù)目回到原來的數(shù)目。重起一下計算機,是新的dbr生效,清空現(xiàn)Fat表(根目錄簇可以不清空,因后邊講到會覆蓋的)。文件目錄項的映射與實際地址便正確的結(jié)合了。(不明白嗎?想想原理,努力消化一下) 接著將找到的簇復制----〉定位到現(xiàn)在的根目錄----〉寫入。 打開“資源管理器“,瀏覽,出來了嗎? 慢!還沒完,現(xiàn)在的目錄結(jié)構(gòu)是出來了,但還不能訪問,因為Fat表所記錄的簇還是空閑的。怎么辦?手動寫,算一下,可能寫完得30年吧!呵呵!哪。。。。,其實,如果要恢復的文件大小都在1簇范圍內(nèi),可在win98下運行磁盤掃描程序,在出現(xiàn)修復的提示時選相應的選象修復即可(別選“刪除涉及到的文件”選項,另外,win2000下不行,掃描程序會直接刪除文件的)。這樣,大小在1簇范圍的文件別完全恢復了(包括文件)。那如何在這種情況下恢復大于1個簇的文件呢?一是你可以寫一個小的程序來實現(xiàn)涉及到的簇的連續(xù)。如果你不會,那么也不難,得一個一個文件的來。打開WinHex,使用它的目錄模板跳轉(zhuǎn)到文件的存儲區(qū),從當前簇復制大小為文件大小的一塊連續(xù)數(shù)據(jù),寫入新文件中(記得寫在其他分區(qū)中),即可!當然,如果簇數(shù)較少,可直接在Fat1中改動。 另外,這樣恢復的文件也不一定正確。要看當初文件的存儲是否連續(xù)了?如果恢復后的文件不能用,那。。。。聽天由命吧?。。。▽ば蘧W(wǎng)http://www./提示:要么你在磁盤中在查找,分析,自己把它連接起來。不過,工作量嗎?。。。) 這樣恢復的是以前一個子目錄的數(shù)據(jù)。如果有多個目錄的數(shù)據(jù)要恢復,可用同樣的方法替換根目錄(第一個數(shù)據(jù)簇),也可以采用手動建立根目錄的方法,不過,別在資源管理器中進行,手動在WinHex中做吧!還有,要是恢復的目錄中有多個簇,再用同樣的方法,查找,作為根目錄。 這是分區(qū)格式為Fat32的情況,如Fat16則不需考慮保留扇區(qū)的數(shù)目情況,F(xiàn)at16無保留扇區(qū)。 這是有目錄項的情況。 再來說一下在無目錄項參照的情況: 以下默認為欲恢復文件是存儲在Fat32文件格式當中的文件。 假如你的磁盤已經(jīng)被xxx破壞的一塌糊涂?;蛘咭呀?jīng)經(jīng)過了n位高手二次處理"加工"過了,什么工具軟件都用過了!結(jié)果仍然沒有看到你需要的數(shù)據(jù)的影子?;蛘吣阋謴偷臄?shù)據(jù)本來就很少(若干源代碼,或是若干論文,若干小的數(shù)據(jù)庫,或是確認在數(shù)據(jù)丟失前正好做了磁盤碎片整理),不值得采用我上面采用的方法。你可以采用在磁盤內(nèi)通過查找的方法,總結(jié)來找回數(shù)據(jù)(不要笑,有技巧的,況且,也許這是唯一的方法?。?/p> 可以通過磁盤文件的存儲特征和文件固有的類型特征來考慮??催^《反黑行動之數(shù)據(jù)恢復》(風般的男人著)應該可以知道,文件在磁盤內(nèi)至少是以扇區(qū)為單位的,也就是說,每個文件在磁盤內(nèi)實際存儲的開始,一定是某扇區(qū)的開始。這是其一,其二是每種類型的文件都有其特定的文件標志,可根據(jù)文件的特定標志(通常還是在文件的開頭)與其在磁盤的位置來圈定。 如果是文本文件,可通過在磁盤內(nèi)查找特征字串的方法來找到。不過,稍有知識的人是都知道的,不說了。(還是使用WinHex吧!硬盤速度可以的話,應該查找1g的空間不超過1分鐘) 尋修網(wǎng)http://www./通過具體的例子看一看已加密或無明顯特征字串的情況(這是最通常的情況)。以一office文檔的恢復為例。 office文檔的實際構(gòu)成總是以 “00000000 d0 cf 11 e0 a1 b1 1a e1 00 00 00 00 00 00 00 00 邢.唷??.......” 開頭,以下列二進制特征為尾: 00148940 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff................. 00148950 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 00148960 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 00148970 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 00148980 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 00148990 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 001489a0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 001489b0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 001489c0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 001489d0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 001489e0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 001489f0 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................. 00148a00 01 00 fe ff 03 0a 00 00 ff ff ff ff 06 09 02 00 ..?...... 00148a10 00 00 00 00 c0 00 00 00 00 00 00 46 18 00 00 00 ....?.....f.... 00148a20 4d 69 63 72 6f 73 6f 66 74 20 57 6f 72 64 20 44 microsoft Word d 00148a30 6f 63 75 6d 65 6e 74 00 0a 00 00 00 4d 53 57 6f ocument.....mswo 00148a40 72 64 44 6f 63 00 10 00 00 00 57 6f 72 64 2e 44 rddoc.....Word.d 00148a50 6f 63 75 6d 65 6e 74 2e 38 00 f4 39 b2 71 00 00 ocument.8.?瞦.. 尋修網(wǎng)http://www./注:這是在WinHex中顯示的情況,此部分內(nèi)容是最后扇區(qū)的中間部分的內(nèi)容# 既然文件頭尾標志已確定,即可在磁盤中搜索了??伤阉魉械?#8220;d0 cf 11 e0 a1 b1 1a e1 ”,保存其位置。在搜索特定的尾標志,保存其位置。觀看在WinHex“位置管理器”中的所保存位置。刪除位置不是以"000h","002h","004h","006h","008h"結(jié)尾的文件頭標志(因為扇區(qū)容量512b=200hb)。刪除不合位置特征的尾標志(通過對200h取余的結(jié)果看)。再刪除多出來的頭或尾標志。(應該成對出現(xiàn)) 此例以Word 2000文檔為例。通常情況下,Word文檔的大小不可能太大。在WinHex的位置管理器當中,所有的位置是以地址來排序的。所以,看一下成對的頭尾標志其偏移是否合邏輯。如不合,刪了! 那么,剩下來的便是最有可能的了。剩下的,不用說了吧!將每一對頭尾地址之間的數(shù)據(jù)保存即可。(成不成功看命吧?。?/p> 這是以office文件為例說明。其實大多數(shù)文件都有特征標志,可參看相關(guān)資料或自己研究。對于沒有特定尾標志的文件,它的結(jié)構(gòu)也有特征,結(jié)合頭標志和結(jié)構(gòu)看吧!(不過可能稍難點!) 還有,恢復的文件當中可能有你刪除了的文件,沒有辦法。只好一視同仁了。不過一般情況下,已刪除文件的開頭是最先被系統(tǒng)的其他文件覆蓋的,可能也能降低工作量吧! |
|