[摘 要] 硬盤是計算機最主要的存儲載體,硬盤硬件故障或固件損壞都可能導致硬盤無法正常工作影響數據正常讀取,本文探討了硬盤物理故障或固件損壞原因及數據恢復的方法。
[關鍵詞] 硬盤物理故障固件損壞數據恢復方法
0.引言
數據恢復是指由于各種原因導致數據丟失時把保留在介質上的數據重新恢復的過程,即使數據被刪除或硬盤出現故障,只要在介質沒有嚴重受損的情況下,數據就有可能被完好無損地恢復。硬盤以其容量大、體積小、速度快、價格便宜等優點,是計算機最主要的數據存儲載體,硬盤故障造成數據丟失時,損失是災難性的。硬盤固件故障和物理故障都可導致硬 盤無法正常運行,存儲的數據也無法正常讀取而丟失。
1.硬盤存儲結構
1.1硬盤的物理結構
計算機硬盤是一個集機、電、磁一體化的高精密系統,它由控制電路板、磁頭、盤片、主軸電機及其它附件組成。硬盤的控制電路板包含主軸調速電路、磁頭驅動與伺服定位電路、讀寫電路、控制與接口電路。磁頭組件是硬盤中最精密的部位之一,它由讀寫磁頭、傳動手臂、傳動軸三部分組成,負責數據讀寫。磁盤片是硬盤存儲數據的載體。主軸組件包括主軸部件如軸承和驅動電機等。
硬盤內部是一個無塵空間,下面是鋁制的基座,基座上安裝著主軸電機、盤片、磁頭電機、磁頭芯片、磁頭、定位夾具等,磁頭、磁頭芯片、音圈電機一般安裝在一起構成磁頭組件。
1.2硬盤的固件
每個硬盤內部都有一個系統保留區,稱為固件(Firmware),固件相當于硬盤的BIOS和操作系統,固件里包括了硬盤正常運行所需的引導命令、控制語句和執行語句,包括驅動、控制、解碼、傳送、檢測等執行指令模塊及型號容量技術參數信息,這些稱為廠家信息。有些硬盤固件保存在電路板芯片中,有的則是部分保存在電路板的芯片中部分保存在硬盤的負磁道中,負磁道就是零磁道前面的磁道。
2.硬盤物理故障分析
(1)硬盤電路板故障
電路板固定在盤體的外面,常見的外部故障有以下幾類:
1)供電的故障
硬盤的供電來自主機的開關電源,硬盤的供電電路如果出現問題,會直接導致硬盤不能工作。故障現象往往表現為不通電、硬盤檢測不到、盤片不轉、磁頭尋道不正常等。
2)接口故障
接口是硬盤與計算機之間傳輸數據的通路,接口電路如出現故障可能會導致硬盤檢測不到、亂碼、參數誤認等現象。
3)緩存故障
緩存用于加快硬盤數據傳輸速度,如出現問題可能會導致硬盤不識別、亂碼、進入操作系統后異常死機等現象。
4)BIOS和主控芯片故障
BIOS用于保存如硬盤容量、接口信息等參數,硬盤所有的工作流程都與BIOS程序相關,通斷電瞬間可能會導致BIOS程序丟失或紊亂。
5)電機驅動芯片故障
硬盤由于轉速太高導致電機驅動芯片發熱量太大而損壞,電機驅動芯片故障導致硬盤電機不能轉動。
(2) 硬盤內部組件故障
硬盤的內部故障比較復雜,大致可以分為以下三種情況:
1)磁頭故障
磁頭用于讀取或寫入硬盤數據,受到劇烈碰撞時易損壞。磁頭故障包括磁頭磨損、磁頭接觸面臟、磁頭擺臂變形、磁鐵移位等。一般表現為通電后,磁頭動作發出的聲音明顯不正常、硬盤無法被系統BIOS檢測到(同時等待時間很長)、無法區分或格式化、格式化后發現從前到后都分布有大量的壞簇等。
2)主軸電機故障
主軸電機用于帶動盤片高速旋轉。現在的硬盤大多使用液態軸承馬達,精度極高,劇烈碰撞后可能會使間隙變大,讀取數據變得困難、電機異響或根本檢測不到硬盤。
3)盤片故障
盤片用于存儲硬盤數據,盤片故障主要指盤片被劃傷,或者盤片上出現壞扇區,一般情況下硬盤的每個扇區可以記錄512B的數據,如果其中任何一個字節不正常,該扇區就屬于缺陷扇區。每個扇區除了記錄512B的數據外,另外還記錄其他一些相關的信息,如標志信息、校驗碼、地址信息等,其中任何一部分信息不正常都導致該扇區成為壞扇區。盤片被輕微劃傷時可通過軟件按一定的算法解碼糾錯,嚴重劃傷時,數據不可恢復。
2.2 硬盤固件故障
硬盤的固件參數一般存放在普通用戶訪問不到的位置,有些是在物理零磁道以前,也就是常說的“負磁道”的位置,固件參數以模塊的形式表現出來,可能每個參數占用一個模塊,也可能幾個參數占用同一個模塊,模塊大小不一樣,有些模塊才一個字節,有些達到幾十KB,這些參數并不是連續存放的,而是各有各的固件位置。
硬盤在通電自檢時,要調用固件中大部分程序和參數,如果計算機能讀出固件的程序和參數模塊,而且校驗正常的話,硬盤就進入準備狀態。硬盤每次啟動時都會調用固件模塊中的模塊,長期的讀取或硬盤發生一些輕微碰撞都會導致硬盤固件損傷,導致某些固件模塊無法正常讀取或校驗不正常,則該硬盤就無法進入準備狀態,計算機BIOS無法檢測到硬盤或檢測到硬盤卻無法對它進行讀/寫操作。
3.硬盤故障數據恢復方法
3.1硬盤電路板故障的數據恢復
當硬盤電路板出現故障時,使用一個同型號相兼容的電路板來替換故障的電路板,這樣故障硬盤能夠正常工作了,這時只需將數據從故障硬盤中復制出來即可。
3.2 硬盤內部故障的數據恢復
硬盤內部故障,在數據恢復時我們可以把它們歸為4類:磁頭組件故障、主軸組件故障、壞扇區和系統信息出錯。硬盤出現這4類故障時,分別采用如下的方法進行數據恢復:
1)磁頭組件故障情況下的數據恢復
對于磁頭組件故障,解決辦法是更換一套同品版同型號無故障的磁頭組件,然后用這套磁頭組件將盤片上的數據讀取出來,更換硬盤磁頭組件需要對硬盤實施開盤操作,開盤工作必須在專業的100級潔凈間中進行。
2)主軸組件故障情況下的數據恢復
硬盤的主軸組件主要是電機軸承和馬達,當硬盤的軸承卡住時,同樣也需要在潔凈間里進行開盤操作,但我們并不需要將卡住的軸承換掉,可直接將故障硬盤的盤片換到一個沒有故障的同型號硬盤中,這樣數據恢復的成功率較高。
3)硬盤出現壞扇區情況下的數據恢復
硬盤壞扇區產生有多種可能的原因,修復的方法有如下幾種:
(1)通過重寫校驗碼、標志信息糾正壞扇區
現在硬盤廠家都公開提供有一些基本的硬盤維護工具,如各種版本的DM、POWERMAX、DLGDIAG等,其中都包括有這樣的功能項:Zero fill(零填充)或Low level format(低級格式化)。進行這兩項功能的操作都會對硬盤的數據進行清零,并重寫每個扇區的校驗碼和標志信息。如果不是磁盤表面介質損傷的話,大部分的壞扇區可以糾正為正常狀態,但是硬盤中的數據將丟失,所以如果需要保留硬盤中的數據,就不能采用這種方法。
(2)調用自動修復機制替換壞扇區
為了降低硬盤返修的概率,硬盤廠商在硬盤內部設計了一個自動修復機制,在對硬盤的讀/寫過程中,如果發現一個壞扇區,則由內部管理程序自動分配一個備用扇區來替換該扇區,并將該扇區物理位置及其替換情況記錄在G表(Growing-list,增長缺陷表)中,對用戶的使用沒有太大的影響。也有一些硬盤自動修復機制的激發條件要嚴格一些,需要運行某些軟件來檢測判斷壞扇區,并發出相應指令激發自動修復功能,比如常用的DM中的Zero fill,Norton中的Wipeinfo和校正工具,這些工具可以在檢測到壞扇區時激發硬盤自動修復機制,將用戶使用過程中產生的壞道寫硬盤的G表,當然G表(G-list)的記錄不會無限制,所以硬盤的G表都會限定在一定數量范圍內,如Maxtor的美鉆二代的限度是636條,WD硬盤的BB系列的限度是508條,超過限度,自動修復機制就不能再起作用,所以硬盤壞道過多就會造成計算機無法正常讀寫硬盤的數據。
(3)用專業軟件將壞扇區記錄在P表(P-list)中
這種方法需要對硬盤進行內部低級格式化。用戶在使用硬盤時,是不能按物理地址模式來訪問硬盤的,而是按邏輯地址模式來訪問。硬盤在通電自檢時,系統會從系統保留區讀取一些特定參數存在緩沖區里,用做物理地址與邏輯地址之間轉換的依據。有些專業軟件可以將檢測到的壞扇區的邏輯地址轉換為對應的物理地址,直接記錄在P表(永久缺陷表)中。
4.硬盤固件故障數據恢復的方法
硬盤固件是控制硬盤正常工作的非常重要的程序,一旦出錯硬盤就無法工作。
如果硬盤故障是由于硬盤系統信息出錯造成的,那么就需要用特殊的工具檢測,查找出錯的信息,并進行修復或替換。一般的工具無法訪問硬盤的系統信息,只能用那些專門針對硬盤系統信息而開發的工具,比如MHDD、PC-3000,才能做到訪問并修改硬盤的系統信息。
PC-3000由俄羅斯著名的硬盤實驗室ACELaboratory研究開發,它是一款專業修復硬盤的綜合工具,特別擅長修復硬盤固件故障。PC-3000由硬件和軟件兩大部分組成:硬件部分由專用于控制硬盤的控制卡和接口線纜組成,軟件分為ISA、PCI和UDMA版本,最新的UMDA版本集成了原來PCI和ISA版的全部功能,全面支持UDMA66模式,并具有硬盤電源保護功能,包括若干個針對不同品牌、不同系列的硬盤而開發的程序模塊。
PC-3000能讀出硬盤內部的固件信息,分析每個固件所處的模塊是否處于正常狀態并且可以修正這些參數,重新寫回盤片中指定的位置,這樣,PC-3000就可以把一些因為固件參數錯亂而無法正常使用的硬盤“修復”到正常狀態,硬盤就可以正常的運行,從而恢復出其中的數據。
作者簡介:
何歡:(1973-),男,碩士,講師,研究方面為網絡與信息安全技術、信息管理、數據恢復技術。