【知识】硬盘不启动的错误现象及解决方法
硬盘不启动的错误现象及解决方法一,硬盘启动过程:
在BIOS自检确认所有的硬件(包括硬盘)连接正确后,硬盘开始启动,以启动分区装有WIN98操作系统为例,其启动过程是:(1)根据CMOS设置的参数,硬盘将磁头定位在物理扇0柱0面1扇上,接着先后读取扇区结束标志55AAH、主引导记录MBR、硬盘分区表HDPT。(2)根据硬盘分区表提供的数据,硬盘将磁头定位在活动分区(主DOS引导分区)的引导扇上(一般为物理扇0柱1面1扇),接着先后读取扇区结束标志55AAH、操作系统参数。(3)根据操作系统参数,读取文件分配表FAT和两个隐含系统文件IO.SYS、MSDOS.SYS (4)根据CONFIG.SYS,读取COMMAND.COM,使电脑能够进入DOS的实模式,启动基本成功。(5)根据AUTOEXEC.BAT,MSDOS.SYS进一步配置WIN98,并决定进入哪一种模式,如果进入窗口模式,还要根据user.dat,system.dat,win.ini,system.ini等读取相关文件,直到桌面最终出现,启动完毕。
这里我只讨论前4步(因为关于第5步文章太多了)。为了能够挖掘出所有错误现象,我做了一次破坏性实验(初学者不宜模仿),实验如下:
二,我让硬盘不启动
1.实验目的:通过模拟因病毒、Bug、误操作等原因导致的硬盘不启动的故障,总结归纳错误现象,当以后真的遇到硬盘不启动时,能积极应对。(总之一句话:危险我一个,幸福所有人^_-)。
2.实验环境:AWARD BIOS4.51,一硬盘、一光驱都设成主盘(分别连在两个IDE数据线上),硬盘6.4G(c,d,e,f四个分区),c区安装可引导的windos98 (FAT16)系统。
3.实验工具:诺顿(NU)8.0中文版的磁盘编辑器(DISKEDIT)
(该软件下载网址见文尾)
4.实验对象:六种硬盘启动时的必需因素:(1)物理连线(2)CMOS硬盘参数(3)主引导扇区(包括主引导记录和硬盘分区表)(4)主DOS引导记录(5)文件分配表(6)三个启动文件
5.实验之前的准备:(1)备份要破坏的所有重要数据(2)格式化一张启动软盘(3)把diskedit.exe,nlib200.rtl,chin16.fnt三个文件拷到该软盘中。
6.实验的简单过程:破坏某个要害因素――>重新启动电脑――>记录错误现象――>恢复破坏――>再破坏下一个要害因素……。如此循环往复,直到破坏完成最后一个。
7.实验结果:经过整理后,详见下一小节
三,硬盘不启动的故障、原因和处理
(一) 黑屏的故障
原因:连接硬盘一端的数据线插反(主板一端不可能插反)
处理:将其重插(数据线的红线与电源线的红线相邻)
(二) 显示“Primary master hard disk fail”的故障
原因:(1)硬盘数据线、电源线两者至少有一个没插好
(2)硬盘跳线设成从盘,而CMOS硬盘参数没做相应修改(仍然是主盘)
处理:(1)将其插牢
(2)重设CMOS
(三) 无提示信息的故障
原因:(1)CMOS硬盘参数的某些数值设置错误
(2)主引导记录错误或丢失
(3)主DOS引导记录第一个重要数据(每扇字节数)错误
(4)文件分配表错误
处理:(1)重设CMOS
(2)用FDISK/MBR命令恢复
(3)用DISKEDIT修复成512
具体步骤:用软盘启动电脑,以diskedit /w /m模式运行;按Alt+P,
将“面0”改为“面1”,确认;按F7以引导记录方式查看,将“每
扇字节数”一项的数值改成“512”。
(4)用DISKEDIT调用第二个分配表,再用NDD修复(下载网址见文尾)
具体步骤:用软盘启动电脑,运行diskedit;在“工具”下拉菜单
中选择“使用第二个FAT表”,退出diskedit;然后运行ndd,选择
“诊断磁盘”项,一步一步按提示操作,直到完成。
(四) 显示“DISK BOOT FAILURE,INSERT SYSTEM DISK AND PRESS
ENTER”的故障
原因:(1)硬盘,光驱连在同一条数据线上,且跳线都设成主盘(或都设成从盘)
(2)CMOS硬盘参数设成NONE
(3)主引导扇区结束标志55AAH错误
处理:(1)将光驱跳线设成从盘(或硬盘跳线设成主盘)
(2)重设CMOS
(3)用NDD的“诊断磁盘”修复
(五) 显示“Error Loading Operating System”的故障
原因:硬盘分区表中的活动分区标志80H被改成00H以外的其它数值(如被
改成FFH)
处理:用DISKEDIT修复为80H
具体步骤:用软盘启动电脑,以diskedit /m /w模式运行;按Alt+P,
不做任何修改,直接回车;按F2以16进制方式查看,把000001B0
地址行的倒数第二个16进制数值改为80。
(六) 显示“Not Found any in HDD”的故障
原因:硬盘分配表中的活动分区标志80H被改成非活动分区标志00H
处理:用DISKEDIT修复为80H
具体步骤:同(五)
(七) 显示“Type the name of the command,Inter preter ……”
原因:(1)硬盘分区表中的主DOS分区标志06H错误
(2)command.com丢失、损坏或与其它两个启动文件版本不同
处理:(1)用DISKEDIT修复为06H
具体步骤:用软盘启动电脑,以diskedit /m /w模式运行;按Alt+P,
不做任何修改,直接回车;按F2用16进制方式查看,把000001C0
地址行的第三个16进制数值改为06。
(2)用软盘中完好的command.com文件拷贝覆盖(注意版本要相同)
(八) DOS下输入d:回车(e:回车,f:回车)后显示“Invalid drive specification”
(注:该现象并不影响硬盘启动,只作参考)
原因:(1)CMOS硬盘参数LBA被设成LARGE
(2)硬盘分区表中的非活动分区标志00H错误
(3)扩展DOS分区引导扇的部分数据错误
处理:(1)重设CMOS
(2)用DISKEDIT修复为00H
具体步骤:用软盘启动电脑,以diskedit /m /w模式运行,按Alt+P,
不做任何修改,直接回车;按F2用16进制方式查看,将000001C0地
址行的倒数第二个16进制数值改为00。
(3)用DISKEDIT修复
具体步骤:情况较复杂,需具体情况具体分析
(九) 显示“Invalid partition table”
原因:硬盘分区表部分数据错误
处理:用DISKEDIT修复
具体步骤:情况较复杂,需具体情况具体分析
(十) 显示“Disk I/O error ……”
原因:主DOS引导记录中物理硬盘标志号错误
处理:用DISKEDIT改成80H(第一个物理硬盘标志号)
具体步骤:用软盘启动电脑,以diskedit /m /w模式运行,按Alt+P,
将默认值改为:柱0面1扇1,确认;按F2用16进制方式查看,将00000020
地址行的第五个16进制数值改为80
(十一) 显示“Missing operating system”
原因:(1)硬盘分区表中的起始定位的三个数据错误
(2)主DOS引导扇区结束标志55AAH 错误
处理:(1)用DISKEDIT修复为1面0簇1扇
具体步骤:用软盘启动电脑,以diskedit /m /w模式运行,按Alt+P,
不做任何修改,直接回车;按F2用16进制方式查看,将000001C0地
址行的倒数第二个16进制数值改为00
(2)用DISKEDIT修复为55AAH
具体步骤:用软盘启动电脑,以diskedit /m /w模式运行,按Alt+P,
将默认值改为:柱0面1扇1,确认;将最后两个16进制数值改为55AA
(十二) 显示“Invalid system disk”
原因:io.sys文件不存在
处理:用软盘里完好的io.sys拷贝覆盖,或用sys c:命令传输(注意版本要相同)
(十三) 显示“Non-System disk or disk error”
原因:同(十二)
处理:同(十二)
(十四) 显示“Failure…”
原因:io.sys被改动
处理:同(十二)
四,最后的启示
由于造成硬盘不启动的原因复杂多样,同一故障不同的BIOS和不同的操作系统提供的错误信息又不尽相同,解决办法也各有长短,所以在一篇文章中是很难讲全的。
值得引起大家重视的是,文中的解决办法并不是万能药水,要想从根本上解决问题就要在硬盘正常的情况下做好备份,尤其要备份好容易被忽视的主引导记录及硬盘分区表、主DOS引导记录、文件分配表等三个硬盘启动必需的数据,其中文件分配表还要经常更新备份。
关于备份,我推荐给大家一个小程序:BFHF,它只有不到3K,却能备份和恢复CMOS、主引导记录及硬盘分区表、主DOS引导记录三种数据,并且简单易学。(下载网址见文尾)
至于文件分配表的备份,对于FAT16用户可用DISKEDIT手工备份和恢复,具体步骤:用软盘启动,运行diskedit,按Alt+D选择C盘,按Alt+1选择“第一个分配表”,按Alt+W选择“写对象”,再选择“对文件”,确定,最后输入要保存的文件名。(恢复步骤与备份步骤相反,不再叙述)
http://www.qqai8.cn/html/8/2/20070225/21.html
[ Edited by269569 on 2007-12-6 09:48 ] 上面的压缩包中有个DDCOPY.EXE
DDCOPY 软件的功能特点: 1. 彻底的硬盘物理拷贝 支持一(源)对多(目标)的拷贝方式 硬盘与硬盘之间拷贝(完全拷贝) 分区与分区之间拷贝(分区拷贝) 支持数据映像文件,并提供分卷存储 采用数据压缩技术保存映像文件 提供缺省拷贝模式 坏扇区拷贝 与硬盘或分区所使用的文件系统无关 支持单硬盘容量最大为2T 支持多种类型硬盘 完全拷贝 通过对硬盘物理扇区的读写,实现多个硬盘之间的完全复制。 采用这种方式拷贝的硬盘,如果源盘与目标盘型号相同的话,可以作到没有任何数据差别。如果源盘与目标盘型号不相同的话,则以容量较小的硬盘为准。 2.分区拷贝 可以将指定的硬盘分区拷贝到任何其他分区上。但目标硬盘的分区必须已经存在。拷贝过程中,程序不自动创建新的分区。 3.映像文件 可以将硬盘或硬盘分区上的数据以映像文件方式进行保存。同时还提供自动分卷功能,使映像文件以指定的容量保存到多个分卷文件中。采用数据压缩技术,使映像文件所占用的磁盘空间大为减少。 * 用户就可以方便地将数据保存到光盘等存储介质上。 * 如果配合磁带机,还可以将数据保存到磁带上。 4.坏扇区拷贝 在拷贝过程中,如果源盘或目标盘上的扇区出现错误,程序可以跳过这些坏扇区,继续进行拷贝工作。 如果您的硬盘发现有坏扇区而无法启动或读取数据,可以通过本程序进行数据恢复。 [程序的运行] ddcopy [-d =m d=d1,dn]|[- =m:i d=d1:j,dn:k] [-v ] [-s] [-c] [-f] [-y] [-h] 命令行参数 -d 设定拷贝模式为硬盘整盘拷贝 表示数据源,m可以为硬盘号或映像文件. d 表示目标,dn可以为硬盘号或映像文件,多个目标间用“,” 分隔. - 设定拷贝模式为分区拷贝 表示数据源,m可以为硬盘号或映像文件,i为分区号. d 表示目标,dn可以为硬盘号或映像文件,k为分区号,多个 目标间用“,”分隔. -v 表示如目标为映像文件,则对其分卷存储,n为每卷容量(MB) -c 采用数据压缩方式保存映像文件 - 显示计算机内所有硬盘的信息 -f 缺省拷贝模式(拷贝计算机内所有的硬盘),源盘为第1硬盘, 目标盘为其余的硬盘。此参数等同于-d =1 d=2,3, ... -y 对于在运行过程的提示信息均回答Yes -h 显示帮助信息和示例 [使用示例]ddcopy -d =1 d=2,3,4将第1硬盘上的数据复制到第2、3、4硬盘上。 ddcopy -d =1 d=2,x:\d1.img -c将第1硬盘复制到第2硬盘,并采用压缩方式保存到映像文件“d1.img”上。 ddcopy -d =x:\d1.img d=1,3将映像文件“d1.img”上的数据复制到第1、3硬盘上。 ddcopy - =1:1 d=2:1,3:2将第1硬盘第1分区上的数据复制到第2硬盘的第1分区和第3硬盘的第2分区上。 ddcopy - =2:1 d=1:2,x:\p21.img -v 634将第2硬盘第1分区上的数据复制到第1硬盘的第2分区上,并保存到映像文件“p21.img”中, 并设定分卷容量为634M (649216KB)。 ddcopy - =x:\p21.img d=2:1,1:2将映像文件“p21.img”中的数据复制到第2硬盘的第1分区和第1硬盘的第2分区上。 [使用说明] DDCOPY是DOS模式下运行的程序,可以运行在PC-DOS、MS-DOS和Win95/98/Me的DOS环境下。不能在NT、Win2000、XP环境下运行。 硬盘号:“1”表示80h硬盘,即BIOS中所认的第一块硬盘,“2”表示81h硬盘,即BIOS中所认的第二块硬盘,依此类推。 分区号:“1”表示硬盘上的第一个分区,“2”表示硬盘上的第二个分区。每个硬盘上取多有四个分区。 映像文件所在的磁盘区域不要位于将要对其进行操作的“源盘”或“目标盘”上。 [硬盘连接方法] 前提:在计算机BIOS中设置以"C"或"IDE0"启动时 IDE硬盘: Primary Master -> 第1硬盘 (80h) Primary lave -> 第2硬盘 (81h) Secondary Master-> 第3硬盘 (82h) Secondary lave -> 第4硬盘 (83h) SCSI硬盘: ID=0 -> 第1硬盘 (80h) ID=1 -> 第2硬盘 (81h) …… [说明:] 将硬盘接到计算机,并在BIOS中正确设置硬盘参数; 记下硬盘的排放顺序,以免拷贝时出现错误; 提高拷贝速度 如果条件允许,用以下连接方法可以提高20%拷贝速度: 对于IDE硬盘,将源盘与目标盘分别用两根数据(排)线与主板连接 对于SCSI硬盘,将源盘与目标盘分别连接到不同的SCSI控制器上 问:不同容量的硬盘是否可以对拷? 答:从理论上讲是可以的。但在实际使用中,由于不同的操作系统对硬盘的操作管理方式不同,不能保证拷贝后的目标盘仍然可以正常使用。尤其是目标盘容量小于源盘容量的情况下。 问:不同型号的硬盘之间是否可以拷贝? 答:型号不同的硬盘往往容量也不完全相同,与上面的问题类似。 问:是否支持NTFS、FAT32、UNIX硬盘的拷贝? 答:完全支持。DDCOPY不涉及硬盘上所使用的文件系统,采用的是完全物理扇区拷贝方法。这点与GHOST有所不同,所以有些UNIX格式的硬盘用GHOST不能正确拷贝,而改用DDCOPY就可以了。 问:拷贝速度能否再快些? 答:这也是我所想努力作到的。但由于在DOS方式下用DMA(直接数据存取)编程非常复杂,实现上有一定的难度。其实在DOS环境下,GHOST与DDCOPY的拷贝速度差不多,我进行过对比。 感觉GHOST速度快,主要是由于GHOST能够识别磁盘上的文件系统,所以只拷贝有效数据,速度自然快些。 问:DDCOPY在NT、2000、XP环境下能运行吗? 答:不能。因为NT等操作系统是运行在保护模式下,应用程序不能直接访问硬件设备。在Win95/98/Me等操作系统下可以正常运行。
页:
[1]