Board logo

标题: [软件故障] 硬盘拯救攻略 [打印本页]

作者: shillan    时间: 2005-11-28 10:57     标题: 硬盘拯救攻略

安装windows 2000时选择了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命令用于记录当前磁盘的信息,供格式化或删除之后的恢复使用,此方法也比较有效。
作者: ganpei1984    时间: 2005-12-13 00:59


作者: sjzsg    时间: 2005-12-16 22:41


作者: daidai007    时间: 2005-12-25 22:43

不顶不行啊!!!
作者: pgkyxk    时间: 2005-12-27 09:55






欢迎光临 逐梦论坛 (http://temp2023.zhumeng.org/) Powered by Discuz! 7.2