数据恢复者Rss 2.0
您当前位置:一盘数据 >> 技术文库 >> 技巧经验 >> 浏览文章

软件能够修复硬盘吗?硬盘损坏分析(4)

时间:2008年12月09日 信息来源:大众硬件 点击:收藏此文 【字体:

● 厂家维修硬盘的方法

这里其实可以向大家先说明一点,即使是从厂家出来的全新硬盘,它们的盘片也不是一点瑕疵也没有的。由于磁盘的盘片比较精密,对于生产环境和移动都有非常高的要求,即使是一粒灰尘、一次很轻微的碰撞,都会产生从几个到数以百计的坏扇区。所以,一般地,按照现在硬盘120GB的容量,全新的盘片即使有几千个坏扇区也不是不可能的。只不过硬盘厂商会使用专门的设备去扫描盘片,把那些坏的扇区和磁介质不稳定的扇区都记录下来,做成一个硬盘缺陷列表,写进系统保留区,通过控制程序把这些扇区封闭起来,而硬盘的控制程序在读取硬盘的时候是不会读取这些区域的。现今的硬盘由于功能和参数复杂,写进系统保留区的信息非常多。这样,由于在底层控制的层面就已经把有问题的扇区封闭掉了,所以用户无论用什么格式化和分区软件都不会看到这部分的信息,看起来就像真的完全没有坏道一样。同时,硬盘里面还有另外一种封闭区域,又称为保留容量,它们其实是完全没有问题的好的盘面,但是因为某种原因被封闭起来了。譬如说一个硬盘是60GB,而磁碟的单碟容量为40GB,那么由两片磁碟构成的硬盘就必须封闭掉20GB的容量(磁碟的生产线都是一定的,厂商为了降低成本,都只会生产一种容量的磁碟,通过封闭不同容量的区域来获得不同的实际硬盘容量)。

扫描和测试盘片

硬盘厂商用于扫描和测试盘片的机器,每小时可以处理600个盘片

小型伺服机

日立生产的用于重写伺服信息的小型伺服机,可以同时处理8个硬盘

弄清楚了硬盘的生产原理,那么厂商如何维修硬盘就很好理解了。对于控制电路、磁头等的损坏,就是应用最简单的替换法,换上新的零件就可以了。对于IC芯片的损坏,可以通过重写IC芯片的信息或者干脆替换IC芯片来修理。对于磁盘盘片的问题,情况就比较复杂。首先,厂商会用专门的仪器设备对硬盘的磁碟表面按照实际的物理地址重新进行全面的扫描,检查出所有坏的、不稳定的扇区,形成一个新的硬盘缺陷列表,然后把它写进硬盘的系统信息区,替换掉原来旧的硬盘缺陷列表。然后调用内部低级格式化程序,对硬盘进行内部格式化。程序会根据新的系统信息区信息,重新对所有的磁道和扇区进行编号、清零,重写磁道伺服信息和扇区信息。经过这样的处理,返修的硬盘就又可以像新的硬盘一样了。

有人可能会有疑问——既然有新的坏扇区加进系统保留区去了,"那么硬盘的容量应该减少才对啊"。其实这是不必担心的,我们上面提到过有另外一种被封闭区域,它们其实是完全没有问题的好的盘面。厂商的设备既然可以封闭新出现的坏扇区,当然也可以从被封闭的完好盘面上提取出相应的扇区容量来替代被封闭的坏扇区。现今的硬盘一般都有非常可观的保留容量,最少的也有好几个GB,大的可以达到20~30GB甚至更多。
那么,是不是返修过的硬盘跟新的硬盘是完全没有差别的呢?这里牵涉到一个工艺学的问题——损伤的内敛性和发散性的区别,我打算留到后面说,这里先说说那些第三方软件修复硬盘的原理。

第三方软件的修复原理

我们这里说的第三方软件修复硬盘,主要讨论的都是修理硬盘扇区的物理性损坏——逻辑坏道没有什么好讨论的,修复并不难。目前,第三方软件修复硬盘扇区的物理性损坏一般有两个主要方式:反向磁化和修改硬盘缺陷列表。

反向磁化是最先被应用的一种修复硬盘扇区物理性损坏的方式。一般地,硬盘的磁头只能负责读取和写入信号,而读取、写入数据信号所需要的电平信号跟磁盘表面的磁介质本身是不一样的。而反向磁化就是通过用软件指令迫使磁头产生于磁介质本身相应的高低电平信号,通过多次的往复运动对损坏或者失去磁性的扇区进行反复加磁,使这些扇区的磁介质重新获得磁能力。HDD Regenerator就是最先采用这种方式的软件,后来有一些软件通过分析它的算法和指令,也掌握了反向磁化的信号,采用跟它相同或者相似的引擎进行反向磁化。要注意的是,现在市面上有不少所谓的专业硬盘维修公司发布了一些自称可以维修硬盘坏道的软件,一般也要300元左右,其实他们只是通过Ultra Edit、Pctools等二进制编辑工具对HDD Regenerator的界面信息进行改写;或者对HDD Regenerator进行脱壳,换上自己编写的外壳界面摇身一变而成的。说白了就是盗版的HDD Regenerator,这请大家务必区分清楚。进行反向磁化最大的缺点是速度慢,对一个磁介质不稳定或者失去磁能力的扇区进行磁化,磁头很可能要往复成百上千次,如果硬盘只有几十个或者几百个坏扇区的话,慢慢熬也是可以的。但是现今硬盘动辄上百GB的容量,有上万个坏扇区也是很平常的事情,这时候如果用这种方法去修,大概还没有修到10%,磁头就会因为疲劳过度变形了,本来通过隐藏分区后还可以用的硬盘就会彻底报废。而且这些扇区的磁介质本身就是不稳定的,即使磁化了,在一段时间内可以使用,但随时有重新失去磁能力的危险,硬盘其实并不稳定。同时,这种方法并不能修复物理划伤这种硬损坏。

修改硬盘缺陷列表的方式就是对反向磁化的改进,这种方法和上面说的硬盘厂商的维修方式非常相似。前面说过了,硬盘厂商对于自己硬盘产品的系统信息区的信息内容和读取的指令代码,一般是不公开的,但是一些技术人员通过分析和逆向工程,破解了厂商的指令代码甚至Fireware,使得他们可以编制出程序软件,自由地读取、修改和写入硬盘系统信息区的信息。这样,他们同样可以像硬盘厂商一样,编写程序对磁盘盘面按照物理地址进行扫描,重新构造出新的缺陷扇区列表写进系统保留区来替换原有的列表。经过这样的软件维修的硬盘,理论上说是跟硬盘厂商维修的硬盘是没有差别的。这种软件因为有了这个功能,所以价格非常昂贵,PC-3000要上万元,效率源专业版(零售版只能修复ECC错误和CRC错误,其实什么也干不了)也要六百多,而且他们是不包括以后的升级技术支持的,因为这些软件有着一个非常致命的弱点——毕竟他们是通过破解获得的数据,在一定程度上说是非法的。不同的硬盘厂商、甚至同一厂商不同型号的硬盘,对于系统保留区的控制代码都是不一样的,Fireware也不同,为了让软件有通用性,他们必须通过不断地破解新的硬盘型号才能使软件支持更多的硬盘。而如果因为你购买了一套软件他们就要不断给予升级支持的话他们是绝对不干的,为了要修更多的新的硬盘型号,你就必须不断地支付升级费用。在另一方面,对硬盘的系统信息区信息,如果破解得好还可以,如果破解得不好,把信息修改写进去以后,轻的会让硬盘在读写时频频出现错误,不稳定;重的就会报销掉这个硬盘了。

最后的分析

前面我已经提到过,其实返修盘和全新的硬盘还是有差别的,那么差别在哪里呢?很简单,在全新的硬盘中,扇区的物理损坏是在生产过程中产生的;而需要返修的硬盘,扇区物理损坏是在使用过程中产生的。而不同的物理损坏产生环境,直接影响到这个损坏的破坏力大小。

为了说明这个问题,我举一个电镀的过程做例子,虽然不一定完全是这样的,但这确实是材料学和工艺学的范畴,即使是磁盘盘面的加工也逃不出这个范围。如果电镀过程中因为某些原因,导致一些地方的镀层过薄或者根本没有镀上,那么这一部分就是缺陷部分,它会很容易氧化生锈。这部分的生锈会蔓延和扩展到原来镀得好、没有缺陷的部分,但是这个过程是非常慢的,因为这个缺陷是在生产过程中跟镀层一起同时形成的,镀层的边缘还封闭得非常好,所以这个缺陷是内敛性的,它的蔓延和扩展会比较慢。而如果原来的镀层是完好的,后来你用刀子刮去一部分镀层,那么就出现了一个发散性的缺陷。因为在这个缺陷中,你不但破坏了缺陷表面的镀层,而且连完好部分的镀层的边缘也被破坏掉。在这种缺陷中,氧化生锈的蔓延和扩展非常快,很快就可以在完好的部分中产生出一大片氧化生锈的区域。

硬盘盘片的生产原理也是一样的。大家都知道,坏的扇区是会蔓延的,即使封闭了这部分扇区不进行读写,它们同样会在盘面上蔓延。在生产过程中形成的坏扇区,周围的磁介质晶体仍然是均匀的和致密的,物理性质仍然相当稳定,在这样的环境中,坏扇区的蔓延是一个非常缓慢的过程,恐怕即使硬盘的使用寿命到了它还没有蔓延出多远。而在使用过程中因为碰撞、划伤而产生的坏扇区,周围的磁介质晶体是处于破碎和疏松的状态,这样,这个坏扇区的蔓延就会非常快,很可能你刚刚封闭了它不久,它就又蔓延到没有封闭的完好区域去了。由于有这样的潜在不稳定性,所以在北美,一般返修的硬盘都会打上返修标签,用非常便宜的价格出售(大概只有市价的1/2到1/3),甚至有一些公司就干脆把返修盘全部拿到亚洲或者一些第三世界国家的市场去卖了。

对于已经返修的硬盘,由硬盘厂商返修和给外面的维修人员通过软件修复,虽然在理论上是基于同样的原理,但是实际效果还是不一样的。用软件修复,需要硬盘的磁头不断读写每个扇区,以确定此扇区是否确实失去磁能力,这个读写过程可能要循环上百次甚至更多。这样一个个扇区不断地读写下去,花费的时间非常长,譬如Mhdd,在默认参数下,随便对一个3.2GB的硬盘作扫描,很可能就需要48小时甚至5天的时间(根据坏盘情况的不同,时间有很大区别),而且必须连续工作不间断。这样对硬盘磁头和盘片本身的损害是非常大的,本来就已经不是好盘了,再经过这样的折腾,就算是修好了,你敢用来装一些有用的数据吗?

如果在硬盘厂商那里返修,他们会使用专门的机器,那些机器采用的是光学原理来对盘片表面查错(具体细节比较巧妙,就不说了,物理或者电子专业的朋友应该都知道),而不是用磁头真正地读写盘片的表面。在这种机器里面,当不同种类的扇区——完好的和有缺陷的:如盘面划伤、磁介质有杂质、磁介质疏松、磁性能不稳定等,通过检测点的时候,会产生不同的反馈光信号,机器会根据反馈的光信号记录下全部有缺陷的扇区记录和相应的扇区位置,编成硬盘缺陷列表。因为不是通过物理磁头读写,所以不但扫描检查的速度飞快,而且对硬盘的盘片伤害会小很多很多。

硬盘备件

我有话说