Skip to content

硬盘修复攻略

2013-11-22 15:50:00   来源:华军科技数据恢复

 安装Windows 2003时选择了NTFS格式化硬盘有相当大的好处,比如数据安全、调电保护等等,不过也有一种隐患,就是NTFS分区一旦出现问题,将造成相当大的麻烦。如果损坏的是系统分区,更会造成系统崩溃等等问题。笔者就受到一次掉电破坏NTFS分区的打击,幸好Windows2000带有完善的保护能力可以确保数据的完整性,这就是控制台方式。同时控制台方式不仅仅能够修复和备份分区的数据,还可以对硬盘的BOOT、MBR引导区、硬盘分区进行修复。 

  如何进入控制台方式? 
  1、设定BIOS中的光盘启动,具体方法本文不详述,可参照主板说明书或其他文章
  2、使用Windows2000安装光盘启动,本文以中文Windows2000服务器版本为例,其它版本步骤相同
  3、出现Press any key to boot from CD...的时候按下任意键进入光盘启动安装
  4、等待出现安装程序准备,这时候按R键选择修复Windows2000
  5、进入修复选项以后,按C键进入故障恢复控制台修复Windows2000
  这时候就进入了控制台方式,一个和MS-DOS非常相似的文字界面。在这里你可以用HELP命令查询你所能够使用的命令,如果你使用的是中文版本的光盘看到的将是中文的帮助信息。 
值得注意的是以下几个命令:
  CHKDSK 用于硬盘的检查,如果系统无法启动,只能通过手动修复,附加参数 /P /R
  DISKPART 用于修改硬盘的分区,可以手动修改硬盘分区,参数复杂,如果不加参数直接进入硬盘分区管理界面
  FIXBOOT 将新的启动扇区写道系统磁盘分区上,参数为所需写入的驱动器号
  FIXMBR 修复启动分区的主引导纪录,参数为制定的设备名,如果是空的,则使用启动设备
  FORMAT 用于格式化磁盘,可以用/FS:file-system选择指定的文件系统(FAT、FAT32或NTFS),需要指定格式化的目标磁盘
  注:DISKPART将影响硬盘上的数据,使用时需慎重 
  同样可以使用和DOS一样的CD、COPY等等进行数据的转移备份,笔者建议在进行磁盘修复之前,应该尽可能的备份重要的数据(除非是分区表出错,系统提示目录枚举错误)。按照症状,若出现无法引导系统,应是用FIXBOOT和FIXMBR进行修复工作;若磁盘分区表错误或者重要文件丢失,应先用CHKDSK/R对指定驱动器进行修复,然后拷贝正确文件到其原有目录。 
  上面的仅仅是讲到了数据的挽救和系统的恢复,在一些特定的情况下,如服务启动崩溃,还可以通过其他的命令方式进行操作,具体方法和命令可以通过HELP和命令帮助等到详细的帮助,本文就不一一详述了,希望能够起到一个抛砖引玉的作用。 
为了有效地保存硬盘中的数据,除了经常性地进行备份工作以外,还要学会在硬盘出现故障时如何救活硬盘,或者从坏的区域中提取出有用的数据,把损失降到最小程度。
系统不认硬盘
系统从硬盘无法启动,从A盘启动也无法进入C盘,使用CMOS中的自动监测功能也无法发现硬盘的存在。这种故障大都出现在连接电缆或IDE端口上,硬盘本身故障的可能性不大,可通过重新插接硬盘电缆或者改换IDE口及电缆等进行替换试验,就会很快发现故障的所在。如果新接上的硬盘也不被接受,一个常见的原因就是硬盘上的主从跳线,如果一条IDE硬盘线上接两个硬盘设备,就要分清楚主从关系。
CMOS引起的故障 
CMOS中的硬盘类型正确与否直接影响硬盘的正常使用。现在的机器都支持“IDE Auto Detect”的功能,可自动检测硬盘的类型。当硬盘类型错误时,有时干脆无法启动系统,有时能够启动,但会发生读写错误。比如CMOS中的硬盘类型小于实际的硬盘容量,则硬盘后面的扇区将无法读写,如果是多分区状态则个别分区将丢失。还有一个重要的故障原因,由于目前的IDE都支持逻辑参数类型,硬盘可采用“Normal,LBA,Large”等,如果在一般的模式下安装了数据,而又在CMOS中改为其它的模式,则会发生硬盘的读写错误故障,因为其映射关系已经改变,将无法读取原来的正确硬盘位置。
主引导程序引起的启动故障
主引导程序位于硬盘的主引导扇区,主要用于检测硬盘分区的正确性,并确定活动分区,负责把引导权移交给活动分区的DOS或其他操作系统。此段程序损坏将无法从硬盘引导,但从软驱或光驱启动之后可对硬盘进行读写。修复此故障的方法较为简单,使用高版本DOS的FDISK最为方便,当带参数/mbr运行时,将直接更换(重写)硬盘的主引导程序。实际上硬盘的主引导扇区正是此程序建立的,FDISK.EXE之中包含有完整的硬盘主引导程序。虽然DOS版本不断更新,但硬盘的主引导程序一直没有变化,从DOS 3.x到Windos 95的DOS,只要找到一种DOS引导盘启动系统并运行此程序即可修复。
分区表错误引发的启动故障
分区表错误是硬盘的严重错误,不同的错误程度会造成不同的损失。如果是没有活动分区标志,则计算机无法启动。但从软驱或光驱引导系统后可对硬盘读写,可通过FDISK重置活动分区进行修复。 
如果是某一分区类型错误,可造成某一分区的丢失。分区表的第四个字节为分区类型值,正常的可引导的大于32MB的基本DOS分区值为06,而扩展的DOS分区值是05。很多人利用此类型值实现单个分区的加密技术,恢复原来的正确类型值即可使该分区恢复正常。分区表中还有其它数据用于记录分区的起始或终止地址。这些数据的损坏将造成该分区的混乱或丢失,可用的方法是用备份的分区表数据重新写回,或者从其它的相同类型的 并且分区状况相同的硬盘上获取分区表数据。 
恢复的工具可采用NU等工具软件,操作非常方便。当然也可采用DEBUG进行操作,但操作繁琐并且具有一定的风险。
分区有效标志错误的故障
在硬盘主引导扇区中还存在一个重要的部分,那就是其最后的两个字节:“55aa”,此字节为扇区的有效标志。当从硬盘、软盘或光盘启动时,将检测这两个字节,如果存在则认为有硬盘存在,否则将不承认硬盘。此处可用于整个硬盘的加密技术,可采用DEBUG方法进行恢复处理。另外,当DOS引导扇区无引导标志时,系统启动将显示为:“Mmissing Operating System”。方便的方法是使用下面的DOS系统通用的修复方法。
DOS引导系统引起的启动故障
DOS引导系统主要由DOS引导扇区和DOS系统文件组成。系统文件主要包括IO.SYS、MSDOS.SYS、COMMAND.COM,其中COMMAND.COM是DOS的外壳文件,可用其它的同类文件替换,但缺省状态下是DOS启动的必备文件。在Windows 95携带的DOS系统中,MSDOS.SYS是一个文本文件,是启动Windows必须的文件,但只启动DOS时可不用此文件。DOS引导出错时,可从软盘或光盘引导系统后使用SYS C:命令传送系统,即可修复故障,包括引导扇区及系统文件都可自动修复到正常状态。
FAT表引起的读写故障 
FAT表记录着硬盘数据的存储地址,每一个文件都有一组FAT链指定其存放的簇地址。FAT表的损坏意味着文件内容的丢失。庆幸的是DOS系统本身提供了两个FAT表,如果目前使用的FAT表损坏,可用第二个进行覆盖修复。但由于不同规格的磁盘其FAT表的长度及第二个FAT表的地址也是不固定的,所以修复时必须正确查找其正确位置,一些工具软件如NU等本身具有这样的修复功能,使用也非常的方便。采用DEBUG也可实现这种操作,即采用其m命令把第二个FAT表移到第一个表处即可。如果第二个FAT表也损坏了,则也无法把硬盘恢复到原来的状态,但文件的数据仍然存放在硬盘的数据区中,可采用CHKDSK或SCANDISK命令进行修复,最终得到*.CHK文件,这便是丢失FAT链的扇区数据。如果是文本文件则可从中提取出完整的或部分的文件内容。
目录表损坏引起的引导故障
目录表记录着硬盘中文件的文件名等数据,其中最重要的一项是该文件的起始簇号。目录表由于没有自动备份功能,所以如果目录损坏将丢失大量的文件。一种减少损失的方法也是采用CHKDSK或SCANDISK程序恢复的方法,从硬盘中搜索出*.CHK文件,由于目录表损坏时仅是首簇号丢失,每一个*.CHK文件即是一个完整的文件,把其改为原来的名字即可恢复大多数文件。
误删除分区时数据的恢复
当用FDISK删除了硬盘分区之后,表面上是硬盘中的数据已经完全消失,在未格式化时进入硬盘会显示为无效驱动器。如果了解FDISK的工作原理,就会知道FDISK只是重新改写了硬盘的主引导扇区(0面0道1扇区)中的内容,具体说就是删除了硬盘分区表信息,而硬盘中的任何分区的数据均没有改变。可仿照上述的分区表错误的修复方法,即想办法恢复分区表数据即可恢复原来的分区及数据。如果已经对分区格式化,在先恢复分区后,可按下面的方法恢复分区数据。
误格式化硬盘数据的恢复
在DOS高版本状态下,FORMAT格式化操作在缺省状态下都建立了用于恢复格式化的磁盘信息,实际上是把磁盘的DOS引导扇区、FAT分区表及目录表的所有内容复制到了磁盘的最后几个扇区中(因为后面的扇区很少使用),而数据区中的内容根本没有改变。这样通过运行UNFORMAT命令即可恢复。另外DOS还提供了一个MIROR命令用于记录当前磁盘的信息,供格式化或删除之后的恢复使用,此方法也比较有效。 
Back To Top
Search