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