第三部分--附錄 <BR>每個(gè)用戶(hù)的硬盤(pán)中都存放著(zhù)大量的有用數據,而硬盤(pán)又是一個(gè)易出毛病的采誦寧。為了有效的保存硬盤(pán)中的數據,除了有效的保存硬盤(pán)中的數據,備份工作以外,還要學(xué)會(huì )在硬盤(pán)出現故障時(shí)如何救活硬盤(pán),或者提取其中的有用數據,把損失降到最小程度。 <BR>1、系統不承認硬盤(pán) <BR>此類(lèi)故障比較常見(jiàn),即從硬盤(pán)無(wú)法啟動(dòng),從A盤(pán)啟動(dòng)也無(wú)法進(jìn)入C盤(pán),使用CMOS中的自動(dòng)監測功能也無(wú)法發(fā)現硬盤(pán)的存在。這種故障大都出現在連接電纜或IDE口端口上,硬盤(pán)本身的故障率很少,可通過(guò)重新插拔硬盤(pán)電纜或者改換IDE口及電纜等進(jìn)行替換試驗,可很快發(fā)現故障的所在。如果新接上的硬盤(pán)不承認,還有一個(gè)常見(jiàn)的原因就是硬盤(pán)上的主從條線(xiàn),如果硬盤(pán)接在IDE的主盤(pán)位置,則硬盤(pán)必須跳為主盤(pán)狀,跳線(xiàn)錯誤一般無(wú)法檢測到硬盤(pán)。 <BR><BR>2、CMOS引起的故障 <BR>CMOS的正確與否直接影響硬盤(pán)的正常使用,這里主要指其中的硬盤(pán)類(lèi)型。好在現在的機器都支持IDEautodetect的功能,可自動(dòng)檢測硬盤(pán)的類(lèi)型。當連接新的硬盤(pán)或者更換新的硬盤(pán)后都要通過(guò)此功能重新進(jìn)行設置類(lèi)型。當然,現在有的類(lèi)型的主板可自動(dòng)識別硬盤(pán)的類(lèi)型。當硬盤(pán)類(lèi)型錯誤時(shí),有時(shí)干脆無(wú)法啟動(dòng)系統,有時(shí)能夠啟動(dòng),但會(huì )發(fā)生讀寫(xiě)錯誤。比如CMOS中的硬盤(pán)類(lèi)型小于實(shí)際的硬盤(pán)容量,則硬盤(pán)后面的扇區將無(wú)法讀寫(xiě),如果是多分區狀態(tài)則個(gè)別分區將丟失。還有一個(gè)重要的故障原因,由于目前的IDE都支持邏輯參數類(lèi)型,硬盤(pán)可采用Normal、LBA、Large等。如果在一般的模式下安裝了數據,而又在CMOS中改為其他的模式,則會(huì )發(fā)生硬盤(pán)的讀寫(xiě)錯誤故障,因為其物理地質(zhì)的映射關(guān)系已經(jīng)改變,將無(wú)法讀取原來(lái)的正確硬盤(pán)位置。 <BR> <BR>3、主引導程序引起的啟動(dòng)故障 <BR>硬盤(pán)的主引導扇區是硬盤(pán)中的最為敏感的一個(gè)采誦寧,其中的主引導程序是它的一部分,此段程序主要用于檢測硬盤(pán)分區的正確性,并確定活動(dòng)分區,負責把引導權移交給活動(dòng)分區的DOS或其他操作系統。此段程序損壞將無(wú)法從硬盤(pán)引導,但從軟區或光區之后可對硬盤(pán)進(jìn)行讀寫(xiě)。修復此故障的方法較為簡(jiǎn)單,使用高版本DOS的fdisk最為方便,當帶參數/mbr運行時(shí),將直接更換(重寫(xiě))硬盤(pán)的主引導程序。實(shí)際上硬盤(pán)的主引導扇區正是此程序建立的,fdisk.exe之中包含有完整的硬盤(pán)主引導程序。雖然DOS版本不斷更新,但硬盤(pán)的主引導程序一直沒(méi)有變化,從DOS3.x到目前有winDOS95的DOS,所以只要找到一種DOS引導盤(pán)啟動(dòng)系統并運行此程序即可修復。 <BR><BR>4、分區表錯誤引導的啟動(dòng)故障 <BR>分區表錯誤是硬盤(pán)的嚴重錯誤,不同錯誤的程度會(huì )造成不同的損失。如果是沒(méi)有活動(dòng)分區標志,則計算機無(wú)法啟動(dòng)。但從軟驅或光驅引導系統后可對硬盤(pán)讀寫(xiě),可通過(guò)fdisk重置活動(dòng)分區進(jìn)行修復。如果是某一分區類(lèi)型錯誤,可造成某一分區的丟失。分區表的第四個(gè)字節為分區類(lèi)型值,正常的可引導的大于32mb的基本DOS分區值為06,而擴展的DOS分區值是05。如果把基本DOS分區類(lèi)型改為05則無(wú)法啟動(dòng)系統,并且不能讀寫(xiě)其中的數據。如果把06改為DOS不識別的類(lèi)型如efh,則DOS認為改分區不是DOS分區,當然無(wú)法讀寫(xiě)。很多人利用此類(lèi)型值實(shí)現單個(gè)分區的加密技術(shù),恢復原來(lái)的正確類(lèi)型值即可使該分區恢復正常。分區表中還有其他數據用于紀錄分區的起始或終止地址。這些數據的損壞將造成該分區的混亂或丟失,一般無(wú)法進(jìn)行手工恢復,唯一的方法是用備份的分區表數據重新寫(xiě)回,或者從其他的相同類(lèi)型的并且分區狀況相同的硬盤(pán)上獲取分區表數據,否則將導致其他的數據永久的丟失。在對主引導扇區進(jìn)行操作時(shí),可采用nu等工具軟件,操作非常的方便,可直接對硬盤(pán)主引導扇區進(jìn)行讀寫(xiě)或編輯。當然也可采用debug進(jìn)行操作,但操作繁瑣并且具有一定的風(fēng)險。 <BR><BR>5、分區有效標志錯誤引起的硬盤(pán)故障 <BR>在硬盤(pán)主引導扇區中還存在一個(gè)重要的部分,那就是其最后的兩個(gè)字節:55aah,此字為扇區的有效標志。當從硬盤(pán),軟盤(pán)或光區啟動(dòng)時(shí),將檢測這兩個(gè)字節,如果存在則認為有硬盤(pán)存在,否則將不承認硬盤(pán)。此標志時(shí)從硬盤(pán)啟動(dòng)將轉入rombasic或提示放入軟盤(pán)。從軟盤(pán)啟動(dòng)時(shí)無(wú)法轉入硬盤(pán)。此處可用于整個(gè)硬盤(pán)的加密技術(shù)?刹捎胐ebug方法進(jìn)行恢復處理。另外,DOS引導扇區仍有這樣的標志存在,當DOS引導扇區無(wú)引導標志時(shí),系統啟動(dòng)將顯示為:missingoperatingsystem。其修復的方法可采用的主引導扇區修復方法,只是地址不同,更方便的方法是使用下面的DOS系統通用的修復方法。 <BR><BR>6、DOS引導系統引起的啟動(dòng)故障 <BR>DOS引導系統主要由DOS引導扇區和DOS系統文件組成。系統文件主要包括io.sys、msdos.sys、command.com,其中command.com是DOS的外殼文件,可用其他的同類(lèi)文件替換,但缺省狀態(tài)下是DOS啟動(dòng)的必備文件。在Windows95攜帶的DOS系統中,msdos.sys是一個(gè)文本文件,是啟動(dòng)windows必須的文件。但只啟動(dòng)DOS時(shí)可不用此文件。但DOS引導出錯時(shí),可從軟盤(pán)或光盤(pán)引導系統,之后使用sysc:傳送系統即可修復故障,包括引導扇區及系統文件都可自動(dòng)修復到正常狀態(tài)。 <BR><BR> <BR>7、fat表引起的讀寫(xiě)故障 <BR>fat表紀錄著(zhù)硬盤(pán)數據的存儲地址,每一個(gè)文件都有一組連接的fat鏈指定其存放的簇地址。fat表的損壞意味著(zhù)文件內容的丟失。慶幸的是DOS系統本身提供了兩個(gè)fat表,如果目前使用的fat表?yè)p壞,可用第二個(gè)進(jìn)行覆蓋修復。但由于不同規格的磁盤(pán)其fat表的長(cháng)度及第二個(gè)fat表的地址也是不固定的,所以修復時(shí)必須正確查找其正確位置,由一些工具軟件如nu等本身具有這樣的修復功能,使用也非常的方便。采用debug也可實(shí)現這種操作,即采用其m命令把第二個(gè)fat表移到第一個(gè)表處即可。如果第二個(gè)fat表也損壞了,則也無(wú)法把硬盤(pán)恢復到原來(lái)的狀態(tài),但文件的數據仍然存放在硬盤(pán)的數據區中,可采用chkdsk或scandisk命令進(jìn)行修復,最終得到*.chk文件,這便是丟失fat鏈的扇區數據。如果是文本文件則可從中提取并可合并完整的文件,如果是二進(jìn)制的數據文件,則很難恢復出完整的文件。 <BR> <BR>8、目錄表?yè)p壞引起的引導故障 <BR>目錄表紀錄著(zhù)硬盤(pán)中文件的文件名等數據,其中最重要的一項是該文件的起始簇號,目錄表由于沒(méi)有自動(dòng)備份功能,所以如果目錄損壞將丟失大量的文件。一種減少損失的方法也是采用上面的chkdsk或scandisk程序的方法,從硬盤(pán)中搜索出chk文件,由目錄表?yè)p壞時(shí)是首簇號丟失,在fat為損壞的情況下所形成的chk文件一般都比較完整的文件數據,每一個(gè)chk文件即是一個(gè)完整的文件,把其改為原來(lái)的名字可恢復大多數文件。 <BR><BR> <BR>9、誤刪除分區時(shí)數據的恢復 <BR>當用fdisk刪除了硬盤(pán)分區之后,表面現象是硬盤(pán)中的數據已經(jīng)完全消失,在未格式化時(shí)進(jìn)入硬盤(pán)會(huì )顯示無(wú)效驅動(dòng)器。如果了解fdisk的工作原理,就會(huì )知道,fdisk只是重新改寫(xiě)了硬盤(pán)的主引導扇區(0面0道1扇區)中的內容。具體說(shuō)就是刪除了硬盤(pán)分區表信息,而硬盤(pán)中的任何分區的數據均沒(méi)有改變,可仿造上述的分區表錯誤的修復方法,即想辦法恢復分區表數據即可恢復原來(lái)的分區即數據,但這只限于除分區或重建分區之后。如果已經(jīng)對分區用format格式化,在先恢復分區后,在按下面的方法恢復分區數據。 <BR> <BR>10、誤格式化硬盤(pán)數據的恢復 <BR>在DOS高版本狀態(tài)下,格式化操作format在缺省狀態(tài)下都建立了用于恢復格式化的磁盤(pán)信息,實(shí)際上是把磁盤(pán)的DOS引導扇區,fat分區表及目錄表的所有內容復制到了磁盤(pán)的最后幾個(gè)扇區中(因為后面的扇區很少使用),而數據區中的內容根本沒(méi)有改變。這樣通過(guò)運行unformatc:即可恢復原來(lái)的文件分配表及目錄表,從而完成硬盤(pán)信息的恢復。另外DOS還提供了一個(gè)miror命令用于紀錄當前的磁盤(pán)的信息,供格式化或刪除之后的恢復使用,此方法也比較有效。 <BR>硬盤(pán)基本知識 <BR><BR>9.物理驅動(dòng)器與邏輯驅動(dòng)器 <BR> 物理驅動(dòng)器指實(shí)際安裝的驅動(dòng)器。 <BR> 邏輯驅動(dòng)器是對物理驅動(dòng)器格式化后產(chǎn)生的。 <BR>要點(diǎn):同上。 <BR>硬盤(pán)邏輯鎖巧解 <BR>在談?wù)摼唧w的解決方法前,先講述一下被邏輯鎖鎖住的硬盤(pán)為什么不能用普通辦法啟 動(dòng)的原因: <BR><BR>計算機在引導DOS系統時(shí)將會(huì )搜索所有邏輯盤(pán)的順序,當DOS被引導時(shí),首先要去找主引 導扇區的分區表信息,位于硬盤(pán)的零頭零柱面的第一個(gè)扇區的OBEH地址開(kāi)始的地方,當 分區信息開(kāi)始的地方為80H時(shí)表示是主引導分區,其他的為擴展分區,主引導分區被定義 為邏輯盤(pán)C盤(pán),然后查找擴展分區的邏輯盤(pán),被定義為D盤(pán),以此類(lèi)推找到E,F,G..... 邏輯鎖就是在此下手,修改了正常的主引導分區記錄將擴展分區的第一個(gè)邏輯盤(pán)指向 自己,DOS在啟動(dòng)時(shí)查找到第一個(gè)邏輯盤(pán)后,查找下個(gè)邏輯盤(pán)總是找到是自己,這樣一來(lái) 就形成了死循環(huán),這就是使用軟驅,光驅?zhuān)p硬盤(pán)都不能正常啟動(dòng)的原因。實(shí)際上這邏輯鎖只是利用了DOS在啟動(dòng)時(shí)的一個(gè)小小缺陷,便令不少高手都束手無(wú)策。知道了邏輯 鎖的上鎖原理,要解鎖也就比較容易了。以前我看到有位朋友采用熱拔插硬盤(pán)電源的方法來(lái)處理:就是在當系統啟動(dòng)時(shí),先不給被鎖的硬盤(pán)插上電源線(xiàn),等待啟動(dòng)完成后再給硬盤(pán)熱插上電源線(xiàn),這時(shí)如果硬盤(pán)沒(méi)有燒壞的話(huà),系統就可以控制硬盤(pán)了。當然這是一種非常危險的方法,大家不要輕易嘗試,下面介紹兩種比較簡(jiǎn)單和安全的處理方法。 <BR> <BR>方法一:修改DOS啟動(dòng)文件 <BR>首先準備一張DOS6.22的系統盤(pán),帶上debug、pctools5.0、fdisk等工具。然后在一臺正常的機器上,使用你熟悉的二進(jìn)制編輯工具(debug、pctools5.0,或者windows下的ultraedit都行)修改軟盤(pán)上的IO.SYS文件(修改前記住改該文件的屬性為正常),具體是在這個(gè)文件里面搜索第一個(gè)55aa字符串,找到以后修改為任何其他數值即可。用這張修改過(guò)的系統軟盤(pán)你就可以順利地帶著(zhù)被鎖的硬盤(pán)啟動(dòng)了。不過(guò)這時(shí)由于該硬盤(pán)正常的分區表已經(jīng)被黑客程序給惡意修改了,你無(wú)法用FDISK來(lái)刪除和修改分區,而且仍無(wú)法用正常的啟動(dòng)盤(pán)啟動(dòng)系統,這時(shí)你可以用DEBUG來(lái)手工恢復。使用DEBUG手工修復硬盤(pán)步驟如下: <BR><BR>a:\ >debug <BR>-a <BR>-xxxx:100 mov ax,0201 讀一個(gè)扇區的內容 <BR>-xxxx:103 mov bx,500 設置一個(gè)緩存地址 <BR>-xxxx:106 mov cx,0001 設置第一個(gè)硬盤(pán)的硬盤(pán)指針 <BR>-xxxx:109 mov dx,0080 讀零磁頭 <BR>-xxxx:10c int 13 硬盤(pán)中斷 <BR>-xxxx:10e int 20 <BR>-xxxx:0110 退出程序返回到指示符 <BR>-g 運行 <BR>-d500 查看運行后500地址的內容 <BR><BR>這時(shí)候會(huì )發(fā)現地址6be開(kāi)始的內容是硬盤(pán)分區的信息,發(fā)現此硬盤(pán)的擴展分區指向自己,這就使DOS或WINDOWS啟動(dòng)時(shí)查找硬盤(pán)邏輯盤(pán)進(jìn)去死循環(huán),在DEBUG指示符下用E命令修改內存數據 具體如下: <BR><BR>E6BE <BR>xx.0 xx.0 xx.0............... <BR>............................. <BR>.......................55 AA <BR>55 AA表示硬盤(pán)有效的標記,不要修改,xx0表示把以前的數據xx改成0 <BR><BR>再用硬盤(pán)中斷13把修改好的數據寫(xiě)入硬盤(pán)就可以了,具體如下: <BR><BR>A:\ >debug <BR>a 100 表示修改100地址的匯編指令 <BR>-xxxx:100 mov ax,0301 寫(xiě)硬盤(pán)一個(gè)扇區 <BR>-xxxx: 這里直接按回車(chē) <BR>-g 運行 <BR>-q 退出 <BR><BR>然后運行 FDISK/MBR(重置硬盤(pán)引導扇區的引導程序),再重新啟動(dòng)電腦就行了。 怎么樣?用這種方法處理夠簡(jiǎn)單的吧?而且這種方法還有一個(gè)好處就是可以保住盤(pán)上的 數據!如果你不需要保數據的話(huà),還有更加簡(jiǎn)單的處理方法: <BR>方法二:巧設BIOS,用DM解鎖大家知道DM軟件是不依賴(lài)于主板BIOS的硬盤(pán)識別安裝軟件,(所以在不能識別大硬盤(pán)的老主板上也可用DM來(lái)安裝使用大容量硬盤(pán))。就算在BIOS中將硬盤(pán)設為NONE,DM也可識別并處理硬盤(pán)。 <BR><BR>首先你要找到和硬盤(pán)配套的DM軟件(找JS要或去網(wǎng)上蕩),然后把DM拷到一張系統盤(pán)上。接上被鎖硬盤(pán),開(kāi)機,按住DEL鍵,進(jìn)CMOS設置,將所有IDE硬盤(pán)設為NONE(這是關(guān)鍵所在!),保存設置,重啟動(dòng),這時(shí)系統即可 帶鎖啟動(dòng)。啟動(dòng)后運行DM,你會(huì )發(fā)現DM可以繞過(guò)BIOS,識別出硬盤(pán),選中該硬盤(pán),分區格式化,就OK了。這么簡(jiǎn)單?不過(guò)這種 方法的弱點(diǎn)是硬盤(pán)上的數據將全部丟失 |