3.5.3硬盘引导型故障的分析及排除 硬盘引导型故障一般在启动机器时出现,这种故障有可能是系统本身的原因造成的,也可能是由病毒引起的。由病毒引起的故障通过查杀毒就能解决,下面就分析病毒以外的故障。 1. HDD controller failure(硬盘驱动器控制失败) 这是启动机器时,由POST程序向驱动器发出寻道命令后,驱动器在规定时间内没有完成操作而产生的超时错误。出现这种错误时有可能硬盘已经损坏了。 2. C:drive failure(硬盘C驱动失败),RUN SETUP UTTLITY(运行设置功能),Press to Resume(按键重新开始) 这种故障一般是因为硬盘的类型设置参数与格式化时所用的参数不符。由于IDE硬盘的设置参数是逻辑参数,所以这种情况多数由软盘启动后,C盘也能够正常读写,只是不能启动。 3. Invalid Drive Specification(无效的驱动器号) 如果一个分区或逻辑驱动器在分区表里的相应表项己不存在,那么对于操作系统来说,该分区或逻辑驱动器也就不存在了,因此这种故障问题一般出在分区表。修复这类故障,最简单的方法是事先做好分区表的备份,如Pctoots9. 0,Ky3000等都有这项功能。 4. Error Loading Operation. System(调进操作系统错误) 这类故障是在读取分区引导区(BOOT区)出错时提示的,其原因可能是① 分区表指示的分区起始物理地址不正确。例如,由于误操作而把分区表项的起 始扇区号(在第三字节)由1改为0,因而INT 13H读盘失败后,即报此错。②分 区引导扇区所在磁道的磁道标志和扇区ID损坏,找不到指定扇区。③驱动器读 电路故障。 5.硬盘不能引导系统,如有软驱,则由A驱引导,显示DRIVE NOT, READYERROR(设备未准备好)Insert Boot Diskette in A(插入引导盘到A驱),Press anykey when ready(准备好后按任意键)。 这是由于由硬盘引导系统,就要通过BIOS中INT 19H固定读取硬盘0面0道1扇区,寻找主引导程序和分区表。INT 19H读驭主引导扇区的失败原因有;①硬盘读电路故障,使读操作失败,属硬件故障:(雪0面0道磁道格式和扇区ID逻辑或物理损坏,找不到指定的扇区:③读盘没有出错,但读出的MBR尾标不为"55AA",系统认为MBR不正确,这是软故障。 6. Non----System DiSk Or Disk Error Replace And Press any key when ready(非系统盘或磁盘错误,重新换盘后按任意键)DOS BOOT区中的引导程序执行后发现错误,报此信息。其可能的原因有:硬盘根目录区第一扇区地址出界(在540MB之后)、读盘出错,这类故障大多为软件故障,如果BPB表损坏,即用软盘启动后,硬盘不能正常读写,可以用NDD修复。如果BPB表完好,只需简单的SYS已传送系统就可引导。 7. Starting Windows...(然后死机) 一般来说,这是由于CONFIG. SYS和AUTOEXC. BAT中的可执行文件本身已经损坏,使得系统在执行到此文件时死机。这个故障非常简单,但因为没有什么故障信息,一般人很容易出现误判。当出现这种现象,并且确信系统文件是完好的,就可以取掉这两个文件,或者在屏幕上出现以上信息时,快速按下"F8 "键,然后选择单步执行,找出色经损坏的文件。 8. Invalid Partition Table(无效的分区表) 在找到激活分区后,主引导程序还将判断余下的三个表项的分区引导标志字节(首字节)是否均为0,即确认是否只有唯一的激活分区。如果有一个不为0,系统就报错并死机。 9. Invalid Media Type Reding Drive X ( X驱动器介质类型无效) 这条信息是针对DOS BOOT区中无效的BPB表而提示的。BPB表是DOS读写硬盘所用的逻辑地址换算成物理地址的桥梁,BPB表损坏会使DOS对磁盘无法操作。 10. HDC controller fail(硬盘控制器控制失败) 这类故障是硬件故障,POST程序向控制器发出复位命令后,在规定的时间内没有得到控制器的中断响应,可能是控制器损坏或电缆没接好。另外,控制器控制失败与硬盘参数设置是否正确也有关。 11.系统不认硬盘 系统从硬盘无法启动,从A盘或光驱启动也无法进入C盘,在CMOS中也无法检测到硬盘。这种故障有可能出现在连接电缆或IDE端口上,硬盘本身故障可能性不大,可通过重新插接硬盘电缆或者改换IDE口及电缆等进行替换试验,就会很快发现故障的所在。如果两个硬盘接在一个数据线上就要分清楚主从关系。 12. CMOS引起的故障 CMOS中的硬盘类型正确与否直接影响硬盘的正常使用。目前,CMOS都支持"IDEAuto Detect"的功能,可自动检测硬盘的类型。当硬盘类型错误时,有时就可能无法启动系统,有时能够启动,但会发生读写错误。例如,CMOS中的硬盘类型小于实际的硬盘容量,则硬盘后面的扇区将无法读写。如果是多分区状态,则有些分区会丢失而读不出来。还有一种故障,由于目前的IDE都支持逻辑参数类型,硬盘可采用"Normal, LBA, Large"等,如果是在一般的模式下安装了数据,而又在CMOS中改为其他的模式运行,则会发生硬盘的读写错误,因为其映射关系已改变,将无法读取原来的正确硬盘位置。 13.主引导程序引起的启动故障 主引导程序位于硬盘的主引导扇区,用于检测硬盘分区的正确性,并确定活动分区,然后把控制权交给活动分区的DOS或其他操作系统。此段程序损坏将无法从硬盘引导,但从软驱或光驱启动之后可对硬盘进行读写。修复此故障的方法较为简单,使用高版本DOS的Fdisk最为方便,当运行FD/mbr时,将直接更换(重写)硬盘的主引导程序。实际上硬盘的主引导扇区正是此程序建立的,Fdisk, EXE,之中包含有完整的硬盘主引导程序。虽然DOS版本不断更新,但硬盘的主引导程序一直没有变化,从DOS 3 X到Windows 95的DOS,只要找到一种DOS引导盘启动系统并运行此程序即可修复。 14.分区表错误引发的启动故障 分区表错误是硬盘的严重错误,不同的错误程度会造成不同的损失。如果是没有活动分区标志,则计算机无法启动,但从软驱或光驱引导系统后可对硬盘进行读写,可通过Fdisk重置活动分区进行修复。如果是某一分区类型错误,可造成某一分区的丢失。分区表的第四个字节为分区类型值,正常的可引导大于32MB的基本DOS分区值为06,而扩展DOS分区值是05。很多人利用此类型值实现单个分区的加密技术,恢复原来的正确类型值即可使该分区恢复正常。分区表中还有其他数据用于记录分区的起始或终止地址。这些数据的损坏将造成该分区的混乱或丢失,可用的方法是用备份分区表数据重新写回,或者从其他相同类型的、分区状况相同的硬盘上获取分区表数据。恢复的工具可采用NU等工具软件,操作非常方便。当然也可采用Debug进行操作,但操作繁琐并且具有一定的风险。 15.’分区有效标志错误的故障 在硬盘主引导扇区中还存在一个重要的部分,那就是其最后的两个字节:55 AA,此字节为扇区的有效标志。当从硬盘、软盘或光盘启动时,将检测这两个字节,如果存在则认为有硬盘存在,否则将不承认硬盘。此处可用于整个硬盘的加密技术,可采用Debug方法进行恢复处理。另外,当DOS引导扇区无引导标志时,系统启动将显示为"Mmissing Operating. System" 16. DOS引导系统引起的启动故障 DOS引导系统主要由DOS引导扇区和DOS系统文件组成。系统文件主要包括1/O,SYS,MSDOS. SYS、COMMAND.COM,其中COMMAND.COM是DOS的外壳文件,可用其他的同类文件替换,但默认状态下是DOS启动的必备文件。在Windowes XP的DOS系统中,MSDOS. SYS是一个文本文件,是启动Wmdows必需的文件,但只启动DOS时可不用此文件。DOS引导出错时,可从软盘或光盘引导系统后使用SYSC:命令传送系统,即可修复故障,包括引导扇区及系统文件都可自动修复到正常状态。 17. FAT表引起的读写故障 FAT表记录着硬盘数据的存储地址,每一个文件都有一组FAT链指定其存放的簇地址。FAT表的损坏意味着文件内容的丢失。DOS系统本身提供了两个FAT表,如果目前使用的FAT表损坏,可用第二个进行覆盖修复。但由于不同规格的磁盘其FAT表的长度及第二个FAT表的地址也是不固定的,所以,修复时必须查找其正确位置。一些工具软件,如NU等本身具有这样的修复功能,使用也非常方便。采用Debug也可实现这种操作,即采用对应的命令把第二个FAT表移到第一个表处即可。如果第二个FAT表也损坏了,则也无法把硬盘恢复到原来的状态,但文件的数据仍然存放在硬盘的数据区中,可采用CHKDSK或SCANDISK命令进行修复,最终得到CHK文件,这便是丢失FAT链的扇区数据。如果是文本文件则可从中提取出完整的或部分的文件内容。 18.目录表损坏引起的引导故障 目录表记录着硬盘中文件的文件名等数据,其中最重要的一项是该文件的起始簇号。目录表由于没有自动备份功能,所以,如果目录损坏将丢失大量的文件。一种减少损失的方法也是采用CHKDSK或SCANDISK程序恢复的方法,从硬盘中搜索出CHK文件。由于目录表损坏时仅是首簇号丢失,每一个CHK文件即是一个完整的文件,把其改为原来的名字即可恢复大多数文件。