科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网存储频道实用技术:硬盘故障判断与排除

实用技术:硬盘故障判断与排除

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

开机时检测硬盘有时失败,出现:“primary masterharddiskfail”。一旦出现无法引导的故障,首先应该用软盘启动,如果硬盘还能识别,处理起来比较简单, 一般用SYS A: C:命令即可。

2008年3月17日

关键字: 硬盘分区表 硬盘进行 硬盘容量

  • 评论
  • 分享微博
  • 分享邮件

  一、开机检测硬盘出错

  开机时检测硬盘有时失败,出现:“primary masterharddiskfail”。有时能检测通过正常启动。检测失败后有时在BIOS中能用AUTO DETECT重新设置,有时AUTODETECT又找不到硬盘。 请按以下顺序检查:检查硬盘线是否松动;换一根好的硬盘线试试。 把硬盘换到其他机器上试试, 换一块主板--确认IDE口没问题。 也有可能是电源导致的问题,换一个质量好一些的电源。认真检查硬盘的PCB,如果PCB板有烧坏的痕迹,请尽快送修。

  如果主板检测到了硬盘的话,请先确认一下检测到的硬盘的容量和其他的参数是否和实际的硬盘参数是相同的。若检测到的硬盘容量和实际的不同,说明系统一定出现故障了,这种情况的发生可能是硬盘、主板、甚至是硬盘数据线。可以用替换法加以确认。 

  总之一旦在自检时出现“HARD DISK FAILURE”之类的提示,请迅速用替换法,确定硬盘是否有故障。如果怀疑硬盘出现物理故障,则需要维修或者更换硬盘。

  二、BIOS设置和安装问题  

  如果BIOS里硬盘参数设置不对,自检不会通过,硬盘是无法正常使用的。首先检查BIOS里硬盘参数的设置,一般来说,486以后的计算机都会有自动检测硬盘型号的功能,进入BIOS里,找到IDE HDD AUTO DETECTION一项后,会自动检测到硬盘型号。  

  如果您的硬盘大于528MB,请注意,在BIOS里设置时,将它的模式设为“LBA”,在Pentium以后的计算机里,默认的硬盘模式是“LBA”。如果设置为其他的模式,在读写硬盘时会出现错误,甚至会导致硬盘数据丢失。安装时常见的故障,可能是因为IDE电缆线接触不良或者也可能是电缆接口接反了。如果信号电脑接反,你会发现,机箱上的硬盘指示灯长亮。

  三、硬盘容错提示

  前面谈到现在硬盘都采取了多项容错技术,其中应用最普遍的是S.M.A.R.T技术。如果屏幕显示“SMART Failure Predicted on Primary Master:ST310210A”然后是警告:“Immediately back-up your date and replase your hard disk drive. A failure mauy be immnent.”此时,须按F1才能继续, 这是S.M.A.R.T技术诊测到你的硬盘可能出现了故障或不稳定情况,警告你需要立即备份数据并更换硬盘。出现这种提示后,除了更换新盘外,没其他解决方法。

  四、由声音判断硬盘故障

  若没有检测到硬盘。首先要考虑的就是硬盘了,硬盘只要一加电,就在不停的运转着, 而且每分钟都是五千转以上的速度,这些机械结构难免要出现故障。可以在CMOS中检测硬盘的时候,听一下硬盘发出的声音,如 果声音是:“哒…哒…哒……”然后就恢复了平静,就有比较大的把握 判断硬盘大概没有问题;如果声音是“哒…哒…哒……”,然后又是连 续几次发出“咔哒…咔哒”的声响的话,有很大的可能是硬盘出问题了。最坏的情况是自检时硬盘出现“达、达、达”之类的周期性噪音,则表明硬盘的机械控制部分或传动臂有问题,或者盘片有严重损伤。 为了进一步判断,您可以将硬盘拆下来,接在其他的电脑上,然 后进入到CMOS中检测一下,如果也是检测不到的话,那就可以断定, 真的是硬盘问题了。

  五、超频后硬盘出错

  超频后出现“硬盘读写失败”,这很可能就是硬盘的毛病。很多硬盘在高外频下工作会有一些问题,轻则无法启动,重则数据丢失,你可以试试将其降为MODE 3,并尽量缩短硬盘排线的长度。100M的采用异步总线,即对PCI来说是三分频(33M),因此对硬盘并没有特殊要求, 。对于非异步总线而言,极限外频大约在92M(即PCI速度在46M),在此条件下几乎所有硬盘都无法承受。

  六、硬盘电路板或芯片烧毁

  硬盘一旦由于电源反接等原因,将造成损坏(BIOS已不认),硬盘的电路板肯定烧毁了 ,这种情况一般不会伤及盘体,只要能找到相同型号的电路板更换(运气好的话只需更换电路板上的某个元件),硬盘修复的可能性应在80%以上,一般修复后数据都还在。若无法修复,盘上数据又确实宝贵,可以找专业人士将硬盘拆开,取出盘片,只要盘体无损伤,大部分数据可用专门的读盘机将内容读出。硬盘电路板烧毁,属于电脑配件的“非正常损坏”, 无论什么原因都不属于保修范围,只有自认倒霉。

  七、电源管理设置问题

  有时候电脑会出现,硬盘忽然停转 我的硬盘有时会无故“嘟”一声停了,然后又立即启动,可以明显听到硬马达起动的声音。 如果硬盘没有别的毛病话,那应该是BIOS设置的问题,请检查BIOS设置中,“power management”中的“ HDD PowerDown”项,将其Disable掉。

  在BIOS中Power Manager Setup 选项中曾改过东西,进入CMOS中发现 Power Management Setup 中的Power Management被设置成MAX Saving(硬盘在1分钟内无数如就进入Power Down供电停止状态),这表示有时当读写命令传输时,有时硬盘已处于停止状态,需要重新“启动”进入工作状态,所以硬盘表现为时快时慢。

  八、硬盘出现坏道的判断   

  首先我们应区别逻辑坏道还是物理坏道。简单说能通过format高级格式化去掉的坏道就是逻辑坏道,无法去掉就是物理坏道。逻辑坏道对硬盘影响不大,而物理坏道是有“传染性”的,一旦发现物理坏道就表示你硬盘有严重质量问题或硬盘寿命快到了,应赶紧更换。

  硬盘故障可分为逻辑损坏和物理损坏两类。如果是逻辑损坏,大不了FORMAT、重装软件。对于物理损坏也就是有了坏道后,如果情况不是特别严重,采取适当的措施后,一般也能解决问题。哪些现象表明硬盘有了物理损伤呢?

  在读取某一文件或运行某一程序时,硬盘反复读盘且出错,或者要经过很长时间才能成功,同时硬盘会发出异样的杂音,这种现象说明硬盘上有坏道。 启动时不能通过硬盘引导系统,用SYS命令传导系统也不能成功。这种情况很有可能是硬盘的引导扇区出了问题。 FORMAT硬盘时,到某一进度停止不前,最后报错,无法完成。 对硬盘执行FDISK时,到某一进度会反复进进退退。 最简单的方法入手。如果能进入Windows 9X系统,则在“我的电脑”中右击硬盘盘符,在快捷菜单中选 “属性”,在“工具”页框中选对硬盘盘面作完全扫描,并且对可能出现的坏簇作自动修正。 因为Windows 9X在很大程度上只是自动修复逻辑坏道,而不能自动修复物理坏道,所以。

  另外大的硬盘经销商,一般有专门测试硬盘是否有物理坏道的专门仪器。

  九、将坏道划为一个分区

  事实上一旦出现坏道,通常的处理方法往往不能奏效。那么,我们可以在这些坏道上作好标记,不去使用这些坏道, 记住坏道的位置,然后对硬盘FORMAT,将有坏道的区域单独划成一个区,以后就不要在这个区上存取文件了。如果坏道不是连续的,而且相距较远,可以将邻近的坏道划在一个区内,多划几个区。坏道周围应留有适当的“好道”空间作为缓冲,因为坏道具有扩散性,如果动用与坏道靠得过分近的“好道”,那么过不了多久,硬盘上又将出现新的坏道。 用PartitionMagic对硬盘进行处理也很方便,PartitionMagic可以在不破坏数据的情况下对硬盘重新分区、动态改变分区大小、改变分区的文件格式、隐藏或显示已有分区等等。将PartitionMagic的DOS版拷在软盘上,用WIN9X启动盘引导系统,运行软盘上的PQMAGIC.EXE。扫描硬盘可以直接用PartitionMagic中Operations菜单下的“check”命令来完成,标记了坏簇后,可以尝试着对它进行重新测试,方法是在Operations菜单下选择“Advanced/bad Sector Retest”;把坏簇分成一个(或几个)区后,再通过Hide Partition菜单项把含有坏道的分区隐藏,以免在Windows9X中误操作。要特别注意的是,如果没有经过格式而直接将有坏道的分区隐藏的话,那么该分区的后续分区将由于驱动器盘符的变化而导致其中的一些与盘符有关的程序无法正确运行。解决的办法是利用Tools菜单下的DriveMapper菜单项,它会自动地收集快捷方式和注册表内的相关信息,立即更新应用程序中的驱动器盘符参数,以确保程序的正常运行。

  十、零磁道损坏的处理

  硬盘的零磁道坏损, 可以试试PartitionMagoc(以下简称为PM)。从A盘启动,运行PM,在主界面上可以鼠标确定一个需要操作的分区(即其C盘),先在主界面上部的分区图表中选择分区,然后在这个图标上单击鼠标右键,并选择“调整容量/移动”这时将会看见一个窗口,拖动窗口上部左边的容量滑动条,这时下部的自由空间就会做出相应的变化。等调整到一个合适的容量之后,按下“确定”按键,就可以在硬盘中多出一个小小自由空间了。这个自由空间包含坏损的零磁道在内,我们将他隐藏。则可能使该盘起死回生。

  对于硬盘0扇区损坏的情况,虽然比较棘手,但也不是无可救药。基本思路是设法把损坏的0扇区屏蔽,而用1扇区代替。完成这项工作的理想软件是Pctools9.0中的DE工具,具体方法如下:

  硬盘零磁道损坏是属于比较常见,也比较严重的硬盘硬件故障,硬盘0磁道损坏大多数情况下只有报废。不过如果你能想法将0道用1道来替换,是有复活可能的。可以使用Pctools9.0中的DISKEDIT工具,或老版本的DM。但成功的几率并不大。大多数时候都没有修复的可能。可以试试使用PCTOOLS 9.0中的DE。运行DE打开Select菜单,这时会出现Partition Table,选中并进入,之后出现硬盘分区表信息. l分区就是C盘,该分区是从硬盘的0柱面开始的,那么,将1分区的Beginning Cylinder的0改成1就可以了。保存后退出。 重新启动,按Delete键进入回COMS设置,进行“IDE AUTO DETECT”, 保存退出,重新分区,格式化即可能修复。

  十一、对硬盘低格

  对硬盘作低格。不到山穷水尽,这一招最好不要用。因为对硬盘作低格害处多多,至少会加速对盘片的磨损,而且,对有坏道的硬盘来说,低格还会加速坏道的蔓延。不过,真到了这一步,只好“死马当活马治”了。不过,此法成功率不高,硬盘上有了坏道,有时低格也不能通过,我就遇到过一只硬盘,低格了好几遍才勉强通过,结果,还是无法FDISK,只好送修。

  硬盘出现坏道,一般需要做低级格式化处理。所谓“低格”,简单说就是将硬盘视作“裸盘”,重新进行划分磁道和扇区、标注地址信息、设置交叉因子等操作,如果是逻辑坏道,“低格”后一般可以修复。如果是物理坏道,则可能被屏蔽掉。“低格”的过程进行得很慢,若中途出现掉电死机等意外情况,将会造成非常严重的后果,而且由于“低格”时要使硬盘的低层物理特性发生变化,对硬盘的寿命肯定有影响,所以一般轻易不要对硬盘进行“低格”操作。(我个人认为无论清除什么“恶性”病毒都用不着牢“低格”的大驾,最多重新分区,高格就行了。当然有坏道时另当别论了,“死马当活马”医。) 但无论如何,硬盘一旦出现坏道,说明的它的可靠性已有问题,还是赶紧更换为上策,以免造成更大的损失。

  十二、硬盘空间丢失

  首先我们要正确认识硬盘容量大小的有关问题。硬盘的实际容量一般都小于其标称容量。造成这种情况的主要原因是,生产厂家一般按每兆1000K字节计算容量,而大多数主板的BIOS及测试软件是以1048K为一兆计算。这样一来二者间便出现了大约5%的差异。而硬盘容量又有纯粹由磁头数、柱面数等物理参数计算得到的物理盘容量以及在经过分区、格式化等操作后实际可用空间的逻辑盘容量之分。此外在CMOS中选择不同的工作模式(NORMA、LBA、LARGE),也会造成容量的不一致。由于有这些因素的影响,一般而言硬盘测试容量与标称容量存在5%-10%左右的差距是基本正常的。

  和硬盘容量有关的是主板CMOS中NORMAL、LBA、LARGE的三种硬盘模式 ,简单说由于最早的BIOS只支持不大于528M容量的硬盘,BIOS中的 C/H/S参数与硬盘实际的完全一样,这时硬盘的模式就是NORMAL,后来为解决528M的限制出现了LARGE模式,它通过增加逻辑柱面的数目,使BIOS支持的容量扩大了一倍,但这是个过度的模式,很快就没有使用了。随着大容量硬盘的流行,现在CMOS的硬盘模式中,实际上只有LBA一项有实用意义,而设为NORMAL、LARGE都不能正常识别及使用大容量硬盘。

  硬盘空间丢失的原因有很多,如误操作、程序非正常退出、非正常关机、病毒感染、程序运行中的错误或者对硬件分区的不合理等情况都会造成硬盘空间的丢失。

  1)、临时文件造成硬盘空间的浪费

  应用程序在运行时非正常退出,会使很多.TMP类型的文件继续存放在硬盘中,在Windows窗口环境中运行应用程序时,会自动产生以~GRB开头的用于存放有关屏幕信息的文件,别外,还有一个用于Windows本身临时交换文件的win386.swp。当程序正常退出运行之前,应用程序会将这些文件删除,而非正常退出时,应用程序无法删除它们。可以定期清理这些文件。

  2)、簇的丢失使硬盘空间丢失

  文件分配表(FAT)是软盘或硬盘上的一个隐含表。FAT记录如何将文件存储在特定的(不一定是连续的)簇上。文件分配表采用一种简单的方法不停地跟踪数据。在FAT中,第一簇的入口是用于存储文件的第二簇的地址。在第二个簇入口处则是第三个簇的地址,等等,直到包含文件结束码的最终簇入口。 很明显,如果FAT表数据因为某种原因遭到破坏,就会导致硬盘数据的逻辑连续性发生紊乱,从而发生硬盘空间丢失的问题。这种空间丢失的故障用一般的磁盘修复工具都可以解决,但数据往往无法修复。 由于传统FAT格式的缺陷,若某个簇没有在任何文件分配链中出现,而且该簇在相应的文件分配表中又被标记为非零时,这时该簇既没有被任何文件使用,又不可以再为其他文件所用,这样就发生了"簇丢失"现象。簇的丢失必然导致硬盘空间的丢失。这种"丢失"空间的现象通常是由于程序在运行中非正常终止、在Win98环境中非正常关机等原因造成的。

  3)、分区过大造成硬盘空间的浪费

  对硬盘的逻辑分区是否合理,这不仅关系到硬盘文件的分类管理,而且也直接关系到硬盘空间的充分利用。下表就是使用FAT16的簇和硬盘物理空间的关系:

  磁盘空间或分区大小 簇的大小

  16M至128M      2K

  128M至256M      4K

  256M至512M      8K

  512M至1GB      16K

  1GB至2GB       32K

  2GB至4GB       64K

  我们知道文件的存储是以簇为单位的,也就是说一个文件要占用一个或多个簇,而簇是由一个或多个扇区构成。如果一个簇只有一个字节被一个文件占用,那么该簇的其他部分即使是空闲的,也不能被别的文件所利用,这样空间就被浪费了。由此可见对硬盘分区在大小划分上是否合理,直接关系到硬盘空间的使用情况。

  4、)合理使用硬盘空间的设置

  回收站空间设置直接影响到硬盘上可用空间的大小,最好你的回收站大小设置为硬盘空间的5%,并且你要定期清空你的回收站。再有一点就是,IE中的Internet文件临时存放空间的设置,如果你将它设置得太大,它存储的Internet文件就会占用你的硬盘空间。

  5、)硬盘出现坏道

  如果硬盘出现了坏道也会导致容量减少,这种问题就是硬盘的硬件问题了。坏道是有传染性的。一旦发现一个坏道,基本表明你硬盘的寿命不长了。用软件处理只是权宜之计。如果你的硬盘还在保修期内的话,赶紧备份重要数据,然后找经销商换。毕竟很多时候盘上的数据比硬盘本身更值钱。

  十三、加装双硬盘后出现故障

  有些朋友在新加了一个硬盘,WIN98就无法启动了,取下新加的硬盘后一切又正常了。这是因为你的WIN98装在原硬盘的非C盘(如D盘)上,而加装双硬盘后在原硬盘存在多分区的情况下,要引起盘符交错,导致原硬盘的盘符发生变化变,WIN98在启动时找不到安装时默认的相关系统文件及众多应用程序,自然不可能正常启动。

  在多分区的情况下,硬盘分区的排列顺序有些古怪:主硬盘的主分区仍被计算机认为是C盘,而第二硬盘的主分区则被认为是D盘,接下来是第一硬盘的其他分区依次从E盘开始排列,然后是第二硬盘的其他分区接着第一硬盘的最后盘符依次排列。要使加上第二硬盘后盘符不发生变化,解决的办法有两个:如果你只使用WIN98的话,比较简单,在CMOS中将第二硬盘设为NONE即可,但在纯DOS下不认第二个硬盘。第二种方法是接上双硬盘后,给第二个硬盘重新分区,删掉其主DOS分区,只分扩展分区。这样盘符也不会交错。当然若第一硬盘只有一个分区的话,也不存在盘符交错的问题。

  十四、硬盘无法引导

  硬盘无法引导系统的故障是非常常见的。原因一般是因为操作系统的重要文件被病毒破坏,或操作失误,导致破坏。引导区和分区表损坏。

  一般情况下遇到此类问题处理的过程如下:首先你应该确认电源和信号电缆连接无误(尤其注意信号电缆的方向不要接反),然后进入主板BIOS的硬盘设置,选择自动识别硬盘,看能否正确识别硬盘,若BIOS在识别时长时间停留不动,最后无法识别该硬盘,则多半是硬盘硬件故障,你自己是无法处理的,赶紧退还你朋友了事^_^。如果主板能正确识别该盘你就不用着急了,首先向朋友问清楚该盘是否是新硬盘,若是新硬盘你应该分区格式化后才能识别,如果是已做好的硬盘则很可能是因为该盘采用了FAT32分区。用DOS6.22启动当然是不能识别的,建议换用WIN98的启动盘。

  一旦出现无法引导的故障,首先应该用软盘启动,如果硬盘还能识别,处理起来比较简单, 一般用SYS A: C:命令即可。如果无效的话可以试试Ndd软件包中的一个工具MAKEDISKBOOT。

  如果问题比较严重的话,最好先想法备份出重要数据,然后分区格式化。你先试试fdiak/mbr重写主引导区, 另外用FDISK检查并激活分区。最后执行format c:/s。

  十五、逻辑锁的处理

  被“逻辑锁”锁住硬盘是比较严重的故障。最直接的后果是,用普通将办法无法启动系统。其原因在于:

  计算机在引导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命令修改内存数据 具体如下:

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章