数据恢复技术大全_派派后花园

用户中心 游戏论坛 社区服务
发帖 回复
阅读:3903 回复:7

[安全] 数据恢复技术大全

刷新数据 楼层直达
展昭

ZxID:99617


等级: 内阁元老
原谅我飞,曾经眷恋太阳~
举报 只看楼主 使用道具 楼主   发表于: 2008-12-13 0
— 本帖被 wq465 执行加亮操作(2008-12-13) —
目录
一.数据恢复基础知识
1.硬盘数据结构
2.硬盘分区方式
3.数据存储原理
4.系统启动流程

二、硬盘数据恢复方案分析
1.文件与删除
2.分区表破坏
3.全盘崩溃和分区丢失
4.文件丢失、误格式化的情况
5.文件损坏
6.硬盘被加密或变换
7.文件加密后密码遗忘
8.系统用户密码遗忘的处理

三.数据备份介绍
1、什么东西最该备份
2、备份到哪里

四.实例全解
1、可恢复实例
硬盘数据恢复实例全解 之一
硬盘数据恢复实例全解 之二
2、不可恢复实例
不可恢复的情况(1)
硬盘数据恢复实例全解 之三
不可恢复的情况(2)
硬盘数据恢复实例全解 之四
1)两点建议
2)解决方案
3、实战操作
硬盘数据恢复实例全解 之五
1)FAT分区的恢复
2)NTFS的恢复
3)分区格式化的恢复
硬盘数据恢复实例全解 之六

五、数据恢复与软故障处理基本指南
第一篇、广义的数据恢复
  1、对数据的潜在威胁
  2、数据丢失的各种逻辑现象
  3、保护数据的建议
第二篇、数据恢复的准备知识
第三章、数据恢复基本攻略
第四章、恢复实例
第五章、附表

六、硬盘维修秘籍
  无法找到硬盘的情况
  提示硬盘出错的情况

七、硬盘诊断步骤

八、硬盘盘故障判断流程
[ 此帖被wq465在2008-12-13 18:22重新编辑 ]
本帖最近评分记录: 2 条评分 派派币 +2
  • wq465

    派派币 +1

    只能加一分。。。

  • huhongyu

    派派币 +1

    最好再发些可以用的数据 ..


展昭

ZxID:99617


等级: 内阁元老
原谅我飞,曾经眷恋太阳~
举报 只看该作者 沙发   发表于: 2008-12-13 0
一、数据恢复基础知识

  说到数据恢复,我们就不能不提到硬盘的数据结构、文件的存储原理,甚至操作系统的启动流程,这些是你在恢硬盘数据时不得不利用的基本知识。即使你不需要恢复数据,理解了这些知识(即使只是稍微多知道一些),对于你平时的电脑操作和应用也是很有帮助的。
我们就从硬盘的数据结构谈起吧……

1、硬盘数据结构
  刚出厂一块硬盘,我们是没有办法使用的,你需要将它分区、格式化,然后再安装上操作系统才可以使用。就拿我们一直沿用到现在的Win9x/Me系列来说,我们一般要将硬盘分成主引导扇区、操作系统引导扇区、FAT、DIR和Data等五部分(其中只有主引导扇区是唯一的,其它的随你的分区数的增加而增加)。

主引导扇区:主引导扇区位于整个硬盘的0磁道0柱面1扇区,包括硬盘主引导记录MBR(Main Boot Record)和分区表DPT(Disk Partition Table)。其中主引导记录的作用就是检查分区表是否正确以及确定哪个分区为引导分区,并在程序结束时把该分区的启动程序(也就是操作系统引导扇区)调入内存加以执行。至于分区表,很多人都知道,以80H或00H为开始标志,以55AAH为结束标志,共64字节,位于本扇区的最末端。值得一提的是,MBR是由分区程序(例如DOS的Fdisk.exe)产生的,不同的操作系统可能这个扇区是不尽相同。如果你有这个意向也可以自己去编写一个,只要它能完成前述的任务即可,这也是为什么能实现多系统启动的原因(说句题外话:正因为这个主引导记录容易编写,所以才出现了很多的引导区病毒)。
操作系统引导扇区: OBR(OS Boot Record)即操作系统引导扇区,通常位于硬盘的0磁道1柱面1扇区(这是对于DOS来说的,对于那些以多重引导方式启动的系统则位于相应的主分区/扩展分区的第一个扇区),是操作系统可直接访问的第一个扇区,它也包括一个引导程序和一个被称为BPB(BIOS Parameter Block)的本分区参数记录表。其实每个逻辑分区都有一个OBR,其参数视分区的大小、操作系统的类别而有所不同。引导程序的主要任务是判断本分区根目录前两个文件是否为操作系统的引导文件(例如MSDOS或者起源于MSDOS的Win9x/Me的IO.SYS和MSDOS.SYS)。如是,就把第一个文件读入内存,并把控制权交予该文件。BPB参数块记录着本分区的起始扇区、结束扇区、文件存储格式、硬盘介质描述符、根目录大小、FAT个数、分配单元(Allocation Unit,以前也称之为簇)的大小等重要参数。OBR由高级格式化程序产生(例如DOS 的Format.com)。

文件分配表:
FAT(File Allocation Table)即文件分配表,是DOS/Win9x系统的文件寻址系统,为了数据安全起见,FAT一般做两个,第二FAT为第一FAT的备份, FAT区紧接在OBR之后,其大小由本分区的大小及文件分配单元的大小决定。
FAT的格式历来有很多选择,Microsoft 的DOS及Windows采用我们所熟悉的FAT12、FAT16和FAT32格式,但除此以外并非没有其它格式的FAT,像Windows NT、OS/2、UNIX/Linux、Novell等都有自己的文件管理方式。

目录区:
DIR是Directory即根目录区的简写,DIR紧接在第二FAT表之后,只有FAT还不能定位文件在磁盘中的位置,FAT还必须和DIR配合才能准确定位文件的位置。DIR记录着每个文件(目录)的起始单元(这是最重要的)、文件的属性等。定位文件位置时,操作系统根据DIR中的起始单元,结合FAT表就可以知道文件在磁盘的具体位置及大小了。在DIR区之后,才是真正意义上的数据存储区,即DATA区。

数据区:
DATA虽然占据了硬盘的绝大部分空间,但没有了前面的各部分,它对于我们来说,也只能是一些枯燥的二进制代码,没有任何意义。在这里有一点要说明的是,我们通常所说的格式化程序(指高级格式化,例如DOS下的Format程序),并没有把DATA区的数据清除,只是重写了FAT表而已,至于分区硬盘,也只是修改了MBR和OBR,绝大部分的DATA区的数据并没有被改变,这也是许多硬盘数据能够得以修复的原因。但即便如此,如MBR/OBR/FAT/DIR之一被破坏的话,也足够咱们那些所谓的DIY老鸟们忙乎半天了……需要提醒大家的是,如果你经常整理磁盘,那么你的数据区的数据可能是连续的,这样即使MBR/FAT/DIR全部坏了,我们也可以使用磁盘编辑软件(比如DOS下的DiskEdit),只要找到一个文件的起始保存位置,那么这个文件就有可能被恢复(当然了,这需要一个前提,那就是你没有覆盖这个文件……)。

2、硬盘分区方式
  我们平时说到的分区概念,不外乎三种:主分区、扩展分区和逻辑分区。
  主分区是一个比较单纯的分区,通常位于硬盘的最前面一块区域中,构成逻辑C磁盘。在主分区中,不允许再建立其它逻辑磁盘。
  扩展分区的概念则比较复杂,也是造成分区和逻辑磁盘混淆的主要原因。由于硬盘仅仅为分区表保留了64个字节的存储空间,而每个分区的参数占据16个字节,故主引导扇区中总计可以存储4个分区的数据。操作系统只允许存储4个分区的数据,如果说逻辑磁盘就是分区,则系统最多只允许4个逻辑磁盘。对于具体的应用,4个逻辑磁盘往往不能满足实际需求。为了建立更多的逻辑磁盘供操作系统使用,系统引入了扩展分区的概念。
  所谓扩展分区,严格地讲它不是一个实际意义的分区,它仅仅是一个指向下一个分区的指针,这种指针结构将形成一个单向链表。这样在主引导扇区中除了主分区外,仅需要存储一个被称为扩展分区的分区数据,通过这个扩展分区的数据可以找到下一个分区(实际上也就是下一个逻辑磁盘)的起始位置,以此起始位置类推可以找到所有的分区。无论系统中建立多少个逻辑磁盘,在主引导扇区中通过一个扩展分区的参数就可以逐个找到每一个逻辑磁盘。
  需要特别注意的是,由于主分区之后的各个分区是通过一种单向链表的结构来实现链接的,因此,若单向链表发生问题,将导致逻辑磁盘的丢失。

3、数据存储原理
既然要进行数据的恢复,当然数据的存储原理我们不能不提,在这之中,我们还要介绍一下数据的删除和硬盘的格式化相关问题……文件的读取操作系统从目录区中读取文件信息(包括文件名、后缀名、文件大小、修改日期和文件在数据区保存的第一个簇的簇号),我们这里假设第一个簇号是0023。操作系统从0023簇读取相应的数据,然后再找到FAT的0023单元,如果内容是文件结束标志(FF),则表示文件结束,否则内容保存数据的下一个簇的簇号,这样重复下去直到遇到文件结束标志。
文件的写入
  当我们要保存文件时,操作系统首先在DIR区中找到空区写入文件名、大小和创建时间等相应信息,然后在Data区找到闲置空间将文件保存,并将Data区的第一个簇写入DIR区,其余的动作和上边的读取动作差不多。
文件的删除
  看了前面的文件的读取和写入,你可能没有往下边继续看的信心了,不过放心,Win9x的文件删除工作却是很简单的,简单到只在目录区做了一点小改动——将目录区的文件的第一个字符改成了E5就表示将改文件删除了。
Fdisk和Format的一点小说明
  和文件的删除类似,利用Fdisk删除再建立分区和利用Format格式化逻辑磁盘(假设你格式化的时候并没有使用/U这个无条件格式化参数)都没有将数据从DATA区直接删除,前者只是改变了分区表,后者只是修改了FAT表,因此被误删除的分区和误格式化的硬盘完全有可能恢复……

4、系统启动流程
  各种不同的操作系统启动流程不尽相同,我们这里以Win9x/DOS的启动流程为例。
第一阶段:系统加电自检POST过程。POST是(Power On Self Test)的缩写,也就是加电自检的意思,微机执行内存FFFF0H处的程序(这里是一段固化的ROM程序),对系统的硬件(包括内存)进行检查。
第二阶段:读取分区记录和引导记录。当微机检查到硬件正常并与CMOS设置相符后,按照CMOS设置从相应设备启动(我们这里假设从硬盘启动),读取硬盘的分区记录(DPT)和主引导记录(MBR)。
第三阶段:读取DOS引导记录。微机正确读取分区记录和主引导记录后,如果主引导记录和分区表校验正确,则执行主引导记录并进一步读取DOS引导记录(位于每一个主分区的第一个扇区),然后执行该DOS引导记录。
第四阶段:装载系统隐含文件。将DOS系统的隐含文件IO.SYS入内存,加载基本的文件系统FAT,这时候一般会出现Starting Windows 9x...的标志,IO.SYS将MS.SYS读入内存,并处理System.dat和User.dat文件,加载磁盘压缩程序。
第五阶段:实DOS模式配置。系统隐含文件装载完成,微机将执行系统隐含文件,并执行系统配置文件(Config.sys),加载Config.sys中定义的各种驱动程序。
第六阶段:调入命令解释程序(Command.com)。系统装载命令管理程序,以便对系统的各种操作命令进行协调管理(我们所使用的Dir、Copy等内部命令就是由Command.com提供的)。
第七阶段:执行批处理文件(Autoexec.bat)。微机将一步一步地执行批处理文件中的各条命令。
第八阶段:加载Win.com。Win.com负责将Windows下的各种驱动程序和启动执行文件加以执行,至此启动完毕。
数据恢复的基础知识到此就给你介绍得差不多了。如果你领会了以上的这些知识,相信加上工具软件的辅助,恢复你丢失的数据简直是轻而易举,这里就不再多说,我们走入真正的实战操作吧……

二、 硬盘数据恢复方案分析

  难道在硬盘数据由于各种原因被破坏后,我们就只能……?
当然,我们最大的期望还是——你永远不要用到下面的方法!因为再完备的事后解决方案,也不能保证所有数据的完好无缺。而要真正做到万无一失,更重要的工作还在于防患于未然。

1、文件与删除
A、症状
  这可能是最简单同时也是最常见的数据损坏,直接的表述就是一般删除文件后清空了回收站,或按住Shift键删除,要不然就是在“回收站”的“属性”中勾选了“删除时不将文件移入回收站,而是彻底删除”。
B、解决方案
  既然是最常见的数据损坏,当然也就是最容易恢复的,下面就根据不同的操作系统给出相应的解决方案。
1).Win9x/Me下的解决方案
也就是FAT16/32分区下的文件误删除恢复,这应该是大部分恢复类软件的基本功能;而我们拿来作例子的软件Recover4all,所提供的功能仅为在Win9x/Me下恢复被误删除的文件——其实很多东西并不是一味求大求全就好,够用已足够,简单就是美。
2).WinNT/2000下的解决方案
  换种说法,也就是如何恢复在NTFS分区下被误删除的文件。对于这种相对简单的需求,File Scavenger完全就可以胜任。当然,File Scavenger是很具有针对性的——它只能在WinNT/2000系统下使用(同时必须以Administrator用户登录系统),而且只对NTFS格式的分区有效。不过它支持压缩过的NTFS分区或文件夹中文件的恢复,并对格式化过的NTFS分区中的文件也有效(注意:File Scavenger只可以对格式化过的分区中的文件进行恢复,并不能恢复整个被格式化过的分区)。
C、不可恢复的情况
  如果文件在删除之后,其存储的磁盘空间进行过写操作,那在通常情况下恢复的几率为0。因此,误删除文件可以恢复的重要前提就是不要在删除文件所在的分区进行写操作。
病毒破坏
A、症状:现在使用电脑的人基本都是谈“毒”色变,病毒带来的数据破坏往往不可预见(包括分区表破坏、数据覆盖等;例如CIH病毒破坏的硬盘,其分区表已被彻底改写,用A盘启动也无法找到硬盘),由此病毒破坏硬盘数据的症状也不好描述,基本上大部分的数据损坏情况都有可能是病毒引起的,所以最稳妥的方法还是安装一个优秀的病毒防火墙。
B、解决方案
  由于病毒破坏硬盘数据的方法各异,恢复的方案就需要对症下药。一般以常见的CIH为例,因为它最普遍,也最容易判断(一般是在4月26日发作)。当用户的硬盘数据一旦被CIH病毒破坏后,使用KV3000的F10功能,可修复的程度如下:
1.C盘容量为2.1G以上,原FAT表是32位的,C分区的修复率为98%,D、E、F等分区的修复率为99%, 配合手工C、D、E、F等分区的修复率为100%。
2.硬盘容量为2.1G以下,原FAT表是16位的,C分区的修复率为0%,D、E、F等分区的修复率为99%,配合手工D、E、F盘的修复率为100%。因为原C盘是16位的短FAT表,所以C盘的FAT表和根目录下的文件目录都被CIH病毒乱码覆盖了。 KV3000可以把C盘找回来,虽然根目录的文件名字已被病毒乱码覆盖看不到了,但文件的内容影像还存储在C盘内的某些扇区上。推荐用KV3000找回C盘,再用文件修复软件TIRAMISU.EXE可将C盘内的部分文件影像找回来,如果原存放文件影像的簇是相连的,找回的文件就完整无损。但对于FAT16的C盘是不是中了CIH就没救呢?你还是可以尝试一下FIXMBR,它可以通过全盘搜索,决定硬盘分区,并重新构造主引导扇区。由于软件只修改主引导扇区记录,对其它扇区不进行写操作,故一般不会带来不安全目录(如果修复得不理想,请DiskEdit等工具进行手工修复)。注意:FIXMBR是一个比较老的程序,对WinNT、Linux以及FAT32考虑得不多。
C、不可恢复的情况
  由于病毒破坏硬盘的方式实在太多,而且大部分破坏都无法用一般软件轻易恢复(如果你喜欢使用DiskEdit等磁盘扇区编辑工具,对某些情况还有一线希望),所以……遇到病毒破坏硬盘的情况你就祈祷吧(由此看来,安装一个优秀的病毒防火墙绝对是有必要的)

2、 分区表破坏
分区表破坏是比较常遇到:
A、破坏原因及恢复可行性分析
分区表破坏,可能是数据损坏中除了物理损坏之外最严重的一种灾难性破坏。究其原因,不外乎以下几种:
1).个人误操作删除分区,只要没有进行其它的操作完全可以恢复。
2).安装多系统引导软件或者采用第三方分区工具,有恢复的可能性。
3).病毒破坏,可以部分或者全部恢复。
4).利用Ghost克隆分区硬盘破坏,只可以部分恢复或者不能恢复(用Ghost的朋友要小心了)。
B、解决方案
在Norton Utility系列工具中,功能十分强大,可以恢复分区记录、FAT表,需要注意的是它对硬盘的操作不是只读的,因此你需要每一步都做好Undo文件,这样即使误操作也可以恢复,Norton Disk Doctor配合DiskEdit在分区表不能恢复时也可以恢复部分文件,可惜Norton Disk Doctor不支持NTFS分区,这不能不说是它的一大遗憾之处……最专业的数据恢复公司出的软件,当然很有专业风范,EasyRecovery支持的文件系统格式很多FAT、NTFS都支持,并且有专门的For Novell版本。EasyRecovery对于分区破坏和硬盘意外被格式化都可安全的恢复,你所要做的就是将数据损坏硬盘挂到另外一台电脑上,尽情恢复就是了,不过EasyRecovery对于中文的文件名和目录名效果不是很好(一些乱码,但文章内容绝对是正确的)。由出品PartitionMagic的PowerQuest公司所出的,硬盘资料复原工具。它是一套恢复硬盘因病毒感染,意外格式化等因素所导致的资料损失工具软件,能将已删除的文件资料找出并恢复,也能找出已重新格式化的硬盘、被破坏的FAT分配表、启动扇区等等,几乎能找出及发现任何在硬盘上的资料(支持FAT16和FAT32及长文件名)。恢复回来的资料能选择在原来所在位置恢复或保存到其它可写入资料的硬盘,也提供了自动备份目录、文件和系统配置文件的功能,能在任何时间恢复)

3、关于全盘崩溃和分区丢失
首先重建MBR代码区,再根据情况修正分区表。修正分区表的基本思路是查找以55AA为结束的扇区,再根据扇区结构和后面是否有FAT等情况判定是否为分区表,最后计算填回主分区表,由于需要计算,过程比较烦琐。如果文件仍然无法读取,要考虑用Tiramint等工具进行修复。如果在FAT表彻底崩溃,恢复某个指定文件,可以用DiskEdit或Debug查找已知信息。比如文件为文本,文件中包含“软件狗”,那么我们就要把它们转换为内码C ED BC FE B9 B7进行查找。

4、文件丢失、误格式化的情况
一般来说,删除文件仅仅是把文件的首字节,改为E5H,而并不破坏文件本身,因此可以恢复。但对不连续文件要恢复文件链,而由于手工交叉恢复对一般计算机用户来说并不容易,这里就就不讲了,建议用工具处理,如果已经安装了Norton Utilities,可以用它来查找。另外,RecoverNT等工具都是恢复的利器。但是应特别注意,千万不要在发现文件丢失后,在本机安装什么恢复工具,你可能恰恰把文件覆盖掉了。特别是如果你的文件在C盘,发现主要文件被你失手清掉了(比如你按SHIFT删除),你应该马上直接关闭电源,用软盘启动进行恢复或把硬盘串接到其它有恢复工具的机器处理。

5、文件损坏
一般的说,恢复损坏文件须要清楚地了解文件的结构,但这并不是很容易的事情,而这方面的工具也不多。不过,文件如果字节正常,不能正常打开往往是文件头损坏。
 

6、硬盘被加密或变换
此时千万不要进行FDISK/MBR,SYS等处理,否则数据再也无法找回,一定要反解加密算法,或找到被移走的重要扇区。对于那些加密硬盘数据的病毒,清除时一定要选择能恢复加密数据的可靠杀毒软件。

7、文件加密后密码遗忘
对于很多字处理软件的文件加密和ZIP等压缩包的加密,你是不能靠加密逆过程来完成的,因为那从理论上是异常困难的。目前有一些相关的软件,他们的思想一般都是用一个大字典集中的数据循环用相同算法加密后与密码的密文匹配,直到一致时则说明找到了密码。你可以去寻找这些软件,当然,有些软件是有后门的,比如DOS 下的WPS,Ctrl+qiubojun就是通用密码。Undiskp的作者冯志宏是解文件密码的个中高手,大家不妨去他的主页看看。

8、系统用户密码遗忘的处理
最简单的方法就是用软盘启动(NT的你也可以把盘挂接在其他NT上),找到支持该文件系统结构的软件(比如针对NT的NTFSDOS),利用他把密码文件清掉、或者是COPY出密码档案,用破解软件套字典来处理。前者时间短但所有用户信息丢失,后者时间长,但保全了所有用户信息。对UNIX系统,建议你一定先做一张应急盘。

三、数据备份介绍
    虽然数据恢复技术可能将你的损失降到最低,但是,谁愿意在惶恐不安中,边祈祷边按下各类数据恢复软件的“Recover”按钮?也没有人喜欢面对满屏的16进制代码,带着侥幸的心理调整硬盘分区表Data区的信息;所以,最好的数据保全方法应该是防患于未然——备份!
虽然,备份可以说是一种悲观的做法,可一旦不可预见的问题发生,备份下来的资料也许是你唯一的救命稻草。

1、什么东西最该备份
决定如何备份前,应先考虑备份什么。硬盘里有三种东西:数据、应用程序和操作系统。你可备份硬盘中的所有东西,也可只备份数据。进行完整的备份是最简单的方法,至少从恢复的角度看是这样。如果整个硬盘完全损坏,你不需要从头重装操作系统和应用程序;而是很快就可恢复运行。但是反过来,进行完整备份花的时间更长,要用到更多带有大容量存储空间的移动设备——即所谓外挂驱动器,如CD-R或Zip驱动器。另一个方法是只备份最重要的东西:数据。你不能很轻易地替换文档、工作表或数据库。备份所有数据的最简单的方法是把所有数据保存到一个地方。你还应备份其它的重要文件,比如那些含有你所有设置的文件,包括浏览器的书签(收藏夹)、cookie(含有密码)、地址簿、配置设置、数据项与报告表、模板、宏等。Windows 2000把这些文件都放到一个名叫“Documents And Settings”的新文件夹中,所以找起来很方便。该文件夹中不仅包括My Documents文件夹,还包括了部分关于配置设置、收藏夹和cookie的注册表信息。在Windows 95或98中,这些文件分布在多个Windows文件夹中,因此必须备份所有文件夹,以防遗漏。

2、备份到哪里
对于一般的个人用户,你当然可以将数据备份在本地硬盘的其它分区中;但如果不是实在别无选择,请不要以为将重要数据备份到本地硬盘的其它分区上就是安全的,各种意外错误或是病毒、木马都很容易将你的整个硬盘数据毁于一旦。所以,我们的建议是将重要数据备份到本地硬盘以外的其它设备,如插拔式外部存储设备(如Zip、Jaz驱动器或USB/1394接口的活动硬盘)等、CD-R/RW或者网络上的其它硬盘。

四、实例全解
1、可恢复实例
难道在硬盘数据由于各种原因被破坏后,我们就只能自怨自艾?
 这篇实例全解,就是希望在不幸的情况发生的时候,读者能够快速找到对应的解决方案,不至于让自己辛勤劳动成果白费。
当然,我们最大的期望还是——你永远不要用到下面的方法!因为再完备的事后解决方案,也不能保证所有数据的完好无缺。而要真正做到万无一失,更重要的工作还在于防患于未然。
文件被删除
一、症状
这可能是最简单同时也是最常见的数据损坏,直接的表述就是一般删除文件后清空了回收站,或按住Shift键删除,要不然就是在“回收站”的“属性”中勾选了“删除时不将文件移入回收站,而是彻底删除”。

二、解决方案
既然是最常见的数据损坏,当然也就是最容易恢复的,下面就根据不同的操作系统给出相应
的解决方案。
 
硬盘数据恢复实例全解 之一
win9X/ME
也就是FAT16/32分区下的文件误删除恢复,这应该是大部分恢复类软件的基本功能;而我们拿来作例子的软件Recover4all,所提供的功能仅为在Win9x/Me下恢复被误删除的文件——其实很多东西并不是一味求大求全就好,够用已足够,简单就是美。
废话少说,我们需要先从Recover4all的主站点(http://www.recover4all.com)下载R4a.exe,这是一个自解压文件,你可以把其中的文件解压到软盘或硬盘的一个目录下(默认就是解压到软盘)。运行其中的rec4all.exe,会看见一个注册窗口,点击其中“To star the progam click”的按钮就能够进行试用(未注册版本只能恢复10KB以内的文件)。程序的主窗口下图所示,这是一个类似于“资源管理器”的窗口;你可以通过点击主菜单下方的盘符按钮来扫描相应分区下的被删除文件,然后在右边的窗口中选择需要恢复的文件,再点击主菜单下方的“Recover”按钮,并在新弹出的窗口中选择恢复文件的存放位置即可——Win9x/Me下的误删除文件恢复就这么简单。


硬盘数据恢复实例全解 之二
WinNT/2000下的解决方案
说法,也就是如何恢复在NTFS分区下被误删除的文件。对于这种相对简单的需求,File Scavenger(http://www.quetek.com/)完全就可以胜任。当然,File Scavenger是很具有针对性的——它只能在WinNT/2000系统下使用(同时必须以Administrator用户登录系统),而且只对NTFS格式的分区有效。不过它支持压缩过的NTFS分区或文件夹中文件的恢复,并对格式化过的NTFS分区中的文件也有效(注意:File Scavenger只可以对格式化过的分区中的文件进行恢复,并不能恢复整个被格式化过的分区)。
File Scavenger目前有两种版本:硬盘安装版和软盘版(其下载的地址分别为:http://www.quetek.com/32fs140.exehttp://www.quetek.com/32fs140f.exe)。硬盘版的安装和一般软件类似,唯一需要注意的是——使用File Scavenger恢复文件的最安全方法就是在文件已经被删除之后安装File Scavenger(当然你不要将软件安装在删除文件所在的分区)。因为File Scavenger的功能比较单一,其执行文件加上所需的库文件一张1.44MB的软盘也可以装下,所以软盘版也许是大家使用得比较多的(你要把软盘版直接放在硬盘的一个目录下也照常可以使用)。下面的实例,我们就用软盘版来说明。
一个非重要的文件Veryimportant.txt被误删除且清空了回收站;还好,你看过本篇“实例分析”而且也在软盘或硬盘上准备好了File Scavenger。OK,现在你运行其中的filescav.exe,你将会看见如下图的窗口。注意:其中的“搜索条件”可有多种格式(例如,*.doc、*、data*.txt等),根据你自己的需要填写最方便查找的;Exhaustive Sear复选框选择后会让你指定搜寻分区的簇大小以及搜索簇的范围,而指定之后File Scavenger会搜寻并显示所有存在的文件名称,不管是被删除的还是没有,因此没有特殊需要还是不用为好;在搜索结果窗口中可以通过点击“Filename”、“Size”、“Modified”等来为搜索结果排序,以方便寻找。
现在我们已经找到了Veryimportant.txt,选择它并点击“Recover”按钮,如果文件能够被恢复,你就可以在先前指定的恢复文件存储路径中找到它(如果你是第一次使用File Scavenger,之前还会有一个窗口提醒你注册,如果不注册,你将只能恢复4KB以内的文件)。现在,还有什么可担心的?
 
2、不可恢复实例
不可恢复的情况(1)

如果文件在删除之后,其存储的磁盘空间进行过写操作,那在通常情况下恢复的几率为0。因此,误删除文件可以恢复的重要前提就是不要在删除文件所在的分区进行写操作。
病毒破坏  
一、症状
 现在使用电脑的人基本都是谈“毒”色变,病毒带来的数据破坏往往不可预见(包括分区表破坏、数据覆盖等;例如CIH病毒破坏的硬盘,其分区表已被彻底改写,用A盘启动也无法找到硬盘),由此病毒破坏硬盘数据的症状也不好描述,基本上大部分的数据损坏情况都有可能是病毒引起的,所以最稳妥的方法还是安装一个优秀的病毒防火墙。
二、解决方案

硬盘数据恢复实例全解 之三 
由于病毒破坏硬盘数据的方法各异,恢复的方案就需要对症下药。这里就以常见的CIH为例,因为它最普遍,也最容易判断(一般是在4月26日发作)。
当用户的硬盘数据一旦被CIH病毒破坏后,使用KV3000的F10功能,可修复的程度如下:
1.C盘容量为2.1G以上, 原FAT表是32位的,C分区的修复率为98%,D、E、F等分区的修复率为99%, 配合手工C、D、E、F等分区的修复率为100%。
2.硬盘容量为2.1G以下,原FAT表是16位的,C分区的修复率为0%,D、E、F等分区的修复率为99%, 配合手工D、E、F盘的修复率为100%。
因为原C盘是16位的短FAT表,所以C盘的FAT表和根目录下的文件目录都被CIH病毒乱码覆盖了。 KV3000可以把C盘找回来,虽然根目录的文件名字已被病毒乱码覆盖看不到了,但文件的内容影像还存储在C盘内的某些扇区上。推荐用KV3000找回C盘,再用文件修复软件TIRAMISU.EXE可将C盘内的部分文件影像找回来(需要了解这个软件的朋友可以访问Ontrack公司的主页http://www.ontrack.com……是不是在这个网站上找不到有关TIRAMISU的内容?呵呵,其实现在TIRAMISU已经被整合到Ontrack公司的旗舰产品——EasyRecovery中。相关的详细介绍可以参照本文的下一部分“分区表破坏”),如果原存放文件影像的簇是相连的,找回的文件就完整无损。
 但对于FAT16的C盘是不是中了CIH就没救呢?你还是可以尝试一下FIXMBR(ftp://www.newhua.com/fixmbr102a.zip),它可以通过全盘搜索,决定硬盘分区,并重新构造主引导扇区。由于软件只修改主引导扇区记录,对其它扇区不进行写操作,故一般不会带来不安全目录(如果修复得不理想,请DiskEdit等工具进行手工修复)。注意:FIXMBR是一个比较老的程序,对WinNT、Linux以及FAT32考虑得不多。

不可恢复的情况(2)

  由于病毒破坏硬盘的方式实在太多,而且大部分破坏都无法用一般软件轻易恢复(如果你喜欢使用DiskEdit等磁盘扇区编辑工具,对某些情况还有一线希望),所以……遇到病毒破坏硬盘的情况你就祈祷吧(由此看来,安装一个优秀的病毒防火墙绝对是有必要的)!
分区表破坏
“天有不测风云,人有旦夕祸福”,这句话可真没有说错,在用电脑的几年时间内,分区表破坏的情形也经历了好几次。想起当初的手足无措,到后来的才敢下手,一直到现在还是战战兢兢,不过所谓的“愚者千虑,必有一得”,经过这么长时间的折磨,也终于给我摸出来一丝门路,不敢独享,希望和遇到有困境的朋友们共享,也希望大家和多多交流--
一、破坏原因及恢复可行性分析
分区表破坏,可能是数据损坏中除了物理损坏之外最严重的一种灾难性破坏。究其原因,不外乎以下几种:
1.个人误操作删除分区,只要没有进行其它的操作完全可以恢复。
2.安装多系统引导软件或者采用第三方分区工具,有恢复的可能性。
3.病毒破坏,可以部分或者全部恢复。
4.利用Ghost克隆分区/硬盘破坏,只可以部分恢复或者不能恢复(用Ghost的朋友要小心了)。

硬盘数据恢复实例全解 之四
1)两点建议
    据国外的一个专业数据修复公司调查,数据损坏以后很大程度上是可以恢复的,之所以有很多不能恢复的实例存在,90%以上是由于用户在后来的恢复过程中有误操作,从而造成了更大的破坏。所以希望朋友们牢记以下两点:
1.在硬盘数据出现丢失后,请立即关机,不要再对硬盘进行任何写操作,那样会增大修复的难度,也影响到修复的成功率.
你的每一步操作都应该是可逆的(就像Norton Disk Doctor中的Undo功能)或者对故障硬盘是只读的(大名大名鼎鼎的EasyRecovery和Lost&Found都是这种工作原理)。
2)解决方案
 这个软件包含在Norton Utility系列工具中,功能十分强大,可以恢复分区记录、FAT表,需要注意的是它对硬盘的操作不是只读的,因此你需要每一步都做好Undo文件,这样即使误操作也可以恢复,Norton Disk Doctor配合DiskEdit在分区表不能恢复时也可以恢复部分文件,可惜Norton Disk Doctor不支持NTFS分区,这不能不说是它的一大遗憾之处……
最专业的数据恢复公司出的软件,当然很有专业风范,EasyRecovery支持的文件系统格式很多FAT、NTFS都支持,并且有专门的For Novell版本。EasyRecovery对于分区破坏和硬盘意外被格式化都可安全的恢复,你所要做的就是将数据损坏硬盘挂到另外一台电脑上,尽情恢复就是了,不过EasyRecovery对于中文的文件名和目录名效果不是很好(一些乱码,但文章内容绝对是正确的)。由出品PartitionMagic的PowerQuest公司所出的,硬盘资料复原工具。它是一套恢复硬盘因病毒感染,意外格式化等因素所导致的资料损失工具软件,能将已删除的文件资料找出并恢复,也能找出已重新格式化的硬盘、被破坏的FAT分配表、启动扇区等等,几乎能找出及发现任何在硬盘上的资料(支持FAT16和FAT32及长文件名)。恢复回来的资料能选择在原来所在位置恢复或保存到其它可写入资料的硬盘,也提供了自动备份目录、文件和系统配置文件的功能,能在任何时间恢复)。要注意的一点是,尽量用一个很大的硬盘来装恢复的数据(最好挂双硬盘),如果目标盘的容量小于源盘的容量,下场会很惨!不过Lost&Found却是基于DOS的一种软件,这在“瘟到死”横行的今天,市场只有越来越小!
 一般的说,恢复损坏文件须要清楚地了解文件的结构,但这并不是很容易的事情,而这方面的工具也不多。不过,文件如果字节正常,不能正常打开往往是文件头损坏。
[ 此帖被wq465在2008-12-13 15:20重新编辑 ]
展昭

ZxID:99617


等级: 内阁元老
原谅我飞,曾经眷恋太阳~
举报 只看该作者 板凳   发表于: 2008-12-13 0
3、实战操作
硬盘数据恢复实例全解之五 
 我的硬盘为IBM 9.44GB硬盘,分区情况如下:
 一天被朋友用Win2000自带的磁盘管理工具将所有分区完全删除,并且删除之后没有进行任何操作。恢复工具的选择上,因为四个分区三个是FAT16,一个是NTFS,我决定首先用Norton Disk Doctor恢复三个FAT16分区,不过由于Norton Disk Doctor不支持NTFS,故采用支持NTFS的EasyRecovery。
 1.FAT分区的恢复
打开Norton Utility中的Norton Disk Doctor,NDD会自动为你检测硬盘分区情况,当检测到测盘2的分区表有问题时,跳出一个提示窗口,询问是否在访问磁盘2的过程中遇到麻烦,按下“Yes”按钮。
  接下来的弹出窗口中提示Norton Disk Doctor没有在磁盘2上发现任何DOS分区,是否要Norton Disk Doctor搜索并重建DOS分区,当然选择“Yes”(是)。
很快又一个“Partition Search”(分区搜索窗口)弹出,提示找到一个2039MB的DOS分区,是不是要恢复,当然是“Yes”。
在接下来的询问是否搜索更多的DOS分区窗口中选择“Yes”,又发现一个DOS分区,一直回答“Yes”直到Norton Disk Doctor找到3个DOS分区,由于NTFS分区Norton Disk Doctor不支持,所以在找到3个分区后,如果磁盘搜索程序询问你是否搜索更多的DOS分区时,选择“No”,重新启动计算机,发现丢失的三个FAT分区完全恢复,并且WinMe仍可正常启动。
2.NTFS的恢复
NTFS分区的恢复我们是使用EasyRecovery来实现的,打开EasyRecovery,按下“Next”(下一步)进入磁盘选择窗口,选中我的IBM-DTTA-351010下的“Unknown File System Type(4.43GB)”,按下“Next”。
在接下来的窗口中你可以设置该分区的起始扇区号(Start Sector)和中止扇区号(End Sector),不用管它,按下“Next”继续。
现在到了选择分区文件格式窗口,在“File system Type”的下拉式菜单中选择“NTFS”(我这里的分区格式是NTFS,你应该选择和你的条件相符的,如果实在不知道分区格式也可以选择“RAW”进行全盘搜索),搜索方式选择“Typical Scan”(特定搜索)就可以了,按下“Next”/“Next”。
硬盘一阵轰隆隆的狂响之后,搜索结果终于出现在我们面前,将你需要恢复的文件前面打上钩,然后在下边的Destination中输入你恢复文件的目的路径,按下“Next”恢复吧……
3.分区格式化的恢复
分区格式化之后,只要其中没有写入任何文件,理论上我们仍然可以恢复。工具吗?当然还是EasyRecovery了,不过需要说明一点的是:由于格式化程序将根目录完全破坏所以用EasyRecovery恢复以后,你会看到一些DIR0、DIR1等目录(不过目录中的文件名还是完整的)!   启动故障
我等电脑用家,如果某一天硬盘不能启动,轻则使你陷入手忙脚乱之中,重则丢失重要资料,我们这里从硬盘启动的整个历程来为你详解每个阶段可能出现的问题以及应该采取的措施,解决你的手足无措之苦……

硬盘数据恢复实例全解 之六
1、出错信息:主机加点自检,自检完毕,硬盘指示灯闪亮,屏幕出现:“Operting system not found”错误信息,硬盘启动失败。用软盘启动成功,试图进故硬盘时,出现:“Invalid drive Specification”错误信息。
 故障分析:用Norton DiskEdit看磁盘的物理0扇区,发现分区结束标志55AA被破坏。
 解决方案:这种问题我们也利用NDD来加以修复,如果你没有NDD,也可以采用相应的磁盘编辑工具,直接将物理0扇区的最后两个字符改为16进制的55AA就可以了。

2、出错信息:开机屏幕显示“Operting system not found”,用Win98启动以后有三条出错信息,在DOS下不能看到任何分区,用DiskEdit查看主引导扇区,发现已经被完全破坏。
故障分析:这种问题应该是分区表被严重破坏的表现,可能是病毒或者人为的误操作(比如使用Ghost恢复分区时选择了错误的选项)。
解决方案:参照前面我们介绍的“分区表破坏”来进行恢复。

3、出错信息:开机后屏幕上出现“Error loading operating system”或“Missing operating system”或者是“Disk I/O Error Replace the disk then press any key”的提示信息。
 故障分析:造成该故障的原因一般是DOS引导记录出现错误。DOS引导记录位于逻辑0扇区,是由高级格式化命令Format生成的。主引导程序在检查分区表正确之后,根据分区表中指出的活动分区的起始地址,读DOS引导记录,若连续读五次都失败,则给出“Error loading opearting system”的错误提示,若能正确读出DOS引导记录,主引导程序则会将DOS引导记录送入内存0:7C00h处,然后检查DOS引导记录的最后两个字节是否为55AAH,若不是这两个字节,则给出“Missing operation system”的提示。
解决方案:对于以上这些问题都可以使用NDD来解决,不过根据不同的出错提示还有不同的解决方案:
 1.出错提示为“Invalid system disk,Replace the disk, and then press anykey”。这种情况一般是因为系统引导文件IO.sys被删除或者损坏,可以用“sys A: C:”将系统引导文件传送到C:盘。
 2.“Error loading system”错误提示。这种提示说明分区表中标明的活动分区的起始位置错误或者DOS引导记录出错,只能用NDD修复。
 3.“Missing operating system”出错提示。用DiskEdit编辑相应活动分区的引导区,并将最后分区结束标志改成55AA。


对于以上几种出错信息,如果你的数据不是很重要,也可以考虑用Format来解决问题,不过我们强烈建议你采用NDD来修复,这样如果你改错了,还有后悔的余地(Undo),这也是我们前面告诫大家用NDD一定要做Undo的原因之所在。

4、出错提示:机器加电自检以后可以出现“Starting MS DOS…”的提示符,但是最后却出现了“Bad or missing command interpret”这样的出错提示。
 故障分析:出现这种问题应该在DOS引导的后期,IO.SYS处理完MS.SYS后,要装入命令解释器Command.com却找不到。
 解决方案:很简单,软盘启动以后,将软盘上的Command.com拷贝到C:盘的根目录下。

数据恢复与软故障处理基本指南
第一篇、广义的数据恢复
长期以来计算机领域数据恢复似乎缺乏一个把握全貌的,如果说给出一个比较能把握全貌的说法,我们首先应当给计算机数据一个广义的概念,某些人觉得只有类似文本文件、数据库中的记录或表这样的东西才是数据,其实从广义上说,任何位于计算机存储介质上的信息都是数据,无论是哪种介质,也无论是具体作用,他们都是数据。与这种概念对应,任何使这些信息发生非主观意愿之外的变化都可视为破坏。那么数据恢复是就是一个把异常数据还原为正常数据的过程。

一、对数据的潜在威胁
1、恶意的程序:大家最熟悉的恶意程序就是病毒,很多人认为病毒对数据的影响仅仅是病毒的破坏性,这是不正确的,实际上病毒的感染本身就是一种破坏,一个病毒无论他借助修改你的引导区、可执行程序还是OFFICE文档,他都把你正常的数据做了改变,当然,你可能举良性伴随性病毒这种极端的例子。但毫无疑问,他同样对数据构成了破坏,至少他减少了你的硬盘的可用空间。同时,恶意的程序还包括特洛伊木马,逻辑炸弹等等。恶意的程序造成的破坏可能是最难恢复的。
2、其他恶意的破坏:即使不借助病毒或者其他的工具,只要拥有足够的权限,任何系统都有一定的“自毁”能力。比如依靠系统正常的删除、移动、格式化等操作也可以达到破坏数据的目的。随着网络技术的发展,威胁已经不仅仅限于本机,
3、误操作:很多数据丢失源于使用者的操作失误,比如误删除,误格式化等等。
4、操作系统或应用软件的错误:随着操作系统和应用程序的代码量的成倍增加,BUG也在不断增加。我们最常用的桌面系统WIN9X就是一个BUG大王。操作系统和应用软件的错误,往往会给人的工作带来一些不可预期的影响。比如前阶段,发现FRONTPAGE98的一个BUG,触发后会把你目录下的文件全部删除,另外,象著名的游戏神话II,出现了如不安装在默认目录中可能会使你丢失扩展分区这样严重的问题。
5、加密和权限:尽管加密和权限设置是你保护数据的有效手段,但遗忘密码也会带来很大的问题。
6、掉电:机器突然掉电的后果可能不仅仅是内存数据的丢失,也可能造成磁盘数据的丢失,或导致系统无法正常启动。
7、内存溢出:导致内存溢出或者进程非法终止等低层错误的原因很多,他就象掉电一样,会使你损失当前的工作。
8、升级:软件系统升级有时会带来一些问题,后面我们将举相应例子。
9、硬件损坏和失窃:这可能是最严重的威胁之一。有时这把你恢复数据的可能降低为零。

二、数据丢失的各种逻辑现象
对数据的恢复,基本上是一种逻辑处理。只有对情况有一个准确的判定,才能做出准确的应对。一般的来说,问题可以归纳为以下几种情况。
1、 硬盘无法完成正确引导:因物理故障造成的逻辑损坏、引导区故障、重要扇区崩溃等等,都会使系统不能完成正常的自举过程。
2、 文件丢失:由于有意破坏,误删除等等都会造成数据的丢失。另外,这种归类不仅仅包括某个或某几个文件,也适用于目录,分区或卷的丢失。
3、 文件无法正常打开:由于病毒感染,加密,文件头损坏等情况,会使文件无法正常打开。
4、 数据紊乱:由于各种因素的影响,数据库中的信息,文本文件等,可能面目全非。

三、保护数据的建议
这个专题是探讨数据恢复的,而不是信息保护的,因此点到为止,一句话,那就是防患于未然,我们列举了对数据的威胁,如果我们最大程度的减弱了这些威胁,对每一种可预知的潜在威胁都有相应的预防和对策,我们的数据安全才会有最大的保障。这些对策主要包括选择良好的反病毒和系统维护产品、加强保安全措施、采用UPS掉电保护、提高用户操作水平和安全意识、形成系统的信息管理和备份制度等等。都可以有效的保证数据的安全,总之,我对数据恢复的认识与病毒是相同的——与其亡羊补牢,不如防患未然 

第二篇、数据恢复的准备知识
1、系统工作机理的简单介绍(本节由lowpower缩写)这一部分在原作中是最重要的一章,考虑到篇幅关系,进行了大量的删节。
①、 DOS(DOS兼容系统)硬盘数据的构成
  DOS磁盘系统,可以按照逻辑分区的概念管理物理空间,不同分区可以装载不同的OS系统。示意如下:
硬盘空间
第一扇区 | 分区1 | 分区2| 分区3 |分区4 |
主引导扇区|引导扇区|引导扇区|引导扇区|引导扇区|
各分区公用|各个分区相对独立,可安装不同操作系统。
对FAT结构的分区每一分区都有独立的引导记录,FDT表,FAT表等。同时,系统还有一个最为重要的主引导记录。在0柱0面1扇区,今后我们用CYL代表柱、SIDE代表面,SEC代表扇区。以下一个FAT结构分区的简图。
保留区--磁盘参数表、DOS引导记录
控制区--FAT表1、FAT表2根目录区
数据区--数据区
以下简单介绍一下重要的部分:
主引导记录又称主分区表、MBR等等:MBR占一个扇区,在CYL 0、SIDE 0 、SEC 1,由代码区和数据区构成。其中代码区是一端标准的程序,完成 BIOS自举到OS BOOT之间的工作,为OS启动做最后的准备。标准代码区可以由FDISK/MBR重建,但对于多系统引导的不标准MBR,将被这一操作破坏。MBR的数据区记录了分区情况。
系统扇区:CYL 0、SIDE 0 、SEC 1-CYL 0、SIDE 0 、SEC 63,共62个扇区引导区又称BOOT区:CYL 0、SIDE
1 、SEC 1 这是我们过去称的DOS引导区。也占一个扇区。
文件分配表又称FAT:是记录文件占用簇的情况和连接关系的地方。一般有两个FAT表,起到备份的作用。FAT12、FAT16的第一FAT表一般均在0-1-2,FAT32的第一FAT表在0-1-33。由于FAT表记录文件占用扇区连接的地方,如果两个FAT表都坏了,后果不堪设想。
由于FAT表的长度与当前分区的大小有关所以FAT2的地址是需要计算的。
根目录区(ROOT、FDT):这里记录了根目录里的目录文件项等,ROOT区跟在FAT2后面。
数据区:跟在ROOT区后面,这才是数据内容。
其实, MBR、隐含扇区、BOOT区,重建都比较容易。数据恢复的关键在于恢复数据文件。由于FAT表记录了文件在硬盘上占用扇区的链表,如果2个FAT表都完全损坏了。那么恢复文件,特别是占用多个不连续扇区文件就相当困难了。
②、 主引导记录简单说明:
主引导记录是硬盘引导的起点,关于代码区不多说了,其数据区,比较重要的是2个标志,80H和55AA,80H一般在偏移1BE处,80是分区激活的标志的标记表示系统可引导,且整个分区表只能有一个80标记。另一个就是结尾的55AA标记,用来表示主引导记录是一个有效的记录。另外,各个分区自身的引导记录,也是以55AA结束,这是我们查找分区的标志。我们后面在介绍如何主引导记录中,给出了一个完整的分区表的例子,大家可对照查看。数据区中,用10H字节表示一个分区,最多可表示4个分区,分别从1BE、1CE、1DE、1EE开始,我们后面给出了分区表项对应地址的含义。大家可以对应分析一下以下分区的情况。
80 01 01 00 0B FE BF FC 3F 00-00 00 7E 86 BB 00
① ② ③ ④ ⑤ ⑥
①:激活标记,80表示可引导分区
②:分区开始的磁头号为01、开始的扇区号为01、开始的柱面号为00,由于开始的扇区号为2进制6位,而开始的柱面号为2进制10位,因此扇区号所用字节的高两位要加在柱面号高两位。
③:分区的系统类型FAT32(0B),01是FAT12,04为FAT16,06为BIGDOS,07为NTFS,其他参见分区类型表。
④:分区结束磁头号254、分区结束扇区号63、分区结束柱面号764
⑤:首扇区的相对扇区号63
⑥:总扇区数12289622
2、常见手工处理工具与DOS外部命令介绍
DEBUG:古老和最为常见的调试跟踪软件,始终捆绑在微软的DOS/WIN9X操作系统中。有19个子命令。有编写执行汇编指令,直接读写绝对扇区和内存单元等功能,可以在最艰苦的条件下工作。DOS6.22以下的系统,DEBUG.EXE在DOS目录下,WIN9X系统中它在WINDOWSCOMMAND目录下,它也出现在WIN9X所生成的应急盘中。
DISKEDIT:常见16进制编辑软件,字符界面,可以以文件方式和扇区方式读写逻辑内容,可以读写绝对扇区,可以方便的查找编辑分区表、FAT表、ROOT区等重要扇区。这一点要比DEBUG更方便。但在一些重要扇区损坏的情况下,DISKEDIT可能无法启动。DISKEDIT软件可以在著名的Norton Utilities软件包中找到。最新的DISKEDIT出现在NU4中。
NDD:常见的FAT文件结构磁盘修复工具,就是著名的NORTON磁盘医生,可以自动修复分区丢失等情况,可以抢救软盘坏区中的数据,强制读出后搬移到其他空白扇区。希望大家不要再使用NORTON FOR DOS7或8的NDD,这个版本由于不支持大分区、FAT32、长文件名等技术,会给你带来大量的麻烦。建议大家使用Norton Utilities4或更高版本中的NDD.EXE,这是纯DOS下的工具。在硬盘崩溃或异常的情况下,他可能可以带给用户以希望。WIN9X下的磁盘医生调用的并不是这个程序,而是NDD32.EXE.
FDISK:FDISK当然是个危险的命令,很多人非常恐惧,事实上,FDISK命令的运行并不影响任何分区内的硬盘数据,他对分区的设置操作,只改变主分区表的数据区。而特别是FDISK异常重要的隐含参数/MBR,可以重建主分区表的代码区,清除主引导型病毒等。这是非常有用的操作。DOS6.22以下的系统,FDISK.EXE在DOS目录下,WIN9X系统中它在WINDOWSCOMMAND目录下,它也出现在WIN9X所生成的应急盘中。
FORMAT:在一些人眼中,FORMAT是最可怕的命令,但他并不是对硬盘清零,特别值得注意的是,很多文件恢复工具都建议你恢复前先FORMAT该分区起到保护的饿作用。DOS6.22以下的系统,FORMAT.COM在DOS目录下,WIN9X系统中它在WINDOWSCOMMAND目录下,它也出现在WIN9X所生成的应急盘中。
HD-COPY:传统的软盘COPY工具,2.0版本以后加入了强制读的功能,可以读出一些损坏扇区的内容。
SYS:SYS命令是重建BOOT区的最简洁的手段,也可以杀除BOOT区病毒。DOS6.22以下的系统,sys.COM在DOS目录下,WIN9X系统中它在WINDOWSCOMMAND目录下,它也出现在WIN9X所生成的应急盘中。
令我非常遗憾的是,至今我没有发现比较出色的扇区级备份镜象工具,我曾写过一个HD-MIRROR,但由于错误较多,我提供下载的第二天就停止了发布,另外fixc的作者noz写过一个clone.exe,但可惜只适合相同的硬盘。我也曾以为GHOST可以做到这点,事实上,你目前还不能指望他为你备份一块深度破损的硬盘。。如果有一个有效的能以按扇区机制(而不是文件机制)压缩备份一块硬盘将之做成一个镜象文件的话,那么我们的恢复工作就拥有了更多的保证和余地。我们可以更大胆的做恢复的尝试。
3、一些自动处理工具或软件包
首先介绍国内的一些免费修复工具
FIXMBR:何公道先生写的一个修复MBR的工具,适合处理逻辑分区丢失的情况, 有一些可选参数,支持FAT32、FAT16,不支持NTFS、LINUX等分区,支持8.4G以上硬盘。可修复CIH发作后的扩展逻辑分区。
VRVFIX:北信源公司的推出的修复硬盘共享工具,适合处理逻辑分区丢失的情况,处理的基本比较准确。支持FAT32、FAT16,不支持NTFS、LINUX等分区。也不支持8.4G以上硬盘。
FIXC:国内最早出现的可以修复部分被CIH破坏的C盘的工具,作者是NOZ,新版本也加入了修复分区信息的功能,支持FAT32、FAT16,有限支持NTFS,不支持8.4G以上硬盘。目前的版本已经比较完善。
FIXHDPT:TBSOFT工作室的分区信息修复工具。支持FAT32、FAT16,不支持NTFS和LINUX,不支持8.4G以上硬盘,是历史比较长的工具之一。
RE(ReapirEasy):本人早期写的分区表修复工具,支持FAT32、FAT16,有限支持NTFS,不支持8.4G 以上硬盘,和某些BIOS不兼容。其整体水准低于前面列举的工具。国外一些系统维护的工具目前已经达到了非常强大的程度。
Norton Utilities:历史最悠久的系统维护工具。不仅可以数据恢复,还可以系统加速和修补内存错误。目前最新的版本是NU4.5 FOR 9X、NU2 FOR NT等。
Tiramint:最为出色的灾难恢复工具之一,有NTFS、FAT32、FAT16、NOVELL4种版本。生成急救软盘,可以对深度破坏的磁盘进行交叉恢复。

4、常用的基本操作
① 读出主引导记录:这是系统级数据恢复可能涉及最多的程序之一。例:
DEBUG
-a100 ;从此处开始汇编
126C:0100 mov ax,201; 读操作一个扇区
126C:0103 mov bx,300; 送入地址300
126C:0106 mov cx,1 ;0面1扇
126C:0109 mov dx,80 ;80H为硬盘,头为0
126C:010C int 13
126C:010E int 3
126C:010F
-g=100 ;执行
AX=0050 BX=0300 CX=0001 DX=0080 SP=FFEE BP=0000 SI=0000 DI=0000 DS=126C ES=126C SS=126C CS=126C IP=010E NV UP EI PL NZ NA PO NC
这里用了I/O中断13,涉及的寄存器含义为ah,操作方式,02H为读,03H为写,al送扇区数,bx送准备装入扇区的内存偏移地址,cx送从哪一道哪一扇区开始,我们一般依靠改换CX来读写不同逻辑盘某个逻辑扇区。dx送盘符和头数INT 3是断点中断,使程序运行到此停止。
② 显示引导区内容:我们把扇区读到某个内存地址并不是目的。而是为了看到他的内容,在DEBUG中D命令可以方便的查看内存单元的内容。续前例,如果我们要看到主引导区的内容的话,既然装载到300。-d300 l200就可以查看了,一个引导区的映象类似如下,可以直观的看 到我们前面所提到的代码区和数据区。是否正常请大家自行分析一下
126C:0300 33 C0 8E D0 BC 00 7C FB-50 07 50 1F FC BE 1B 7C 3.....|.P.P....|
126C:0310 BF 1B 06 50 57 B9 E5 01-F3 A4 CB BE BE 07 B1 04 ...PW...........
126C:0320 38 2C 7C 09 75 15 83 C6-10 E2 F5 CD 18 8B 14 8B 8,|.u...........
126C:0330 EE 83 C6 10 49 74 16 38-2C 74 F6 BE 10 07 4E AC ....It.8,t....N.
126C:0340 3C 00 74 FA BB 07 00 B4-0E CD 10 EB F2 89 46 25 <.t...........F%
126C:0350 96 8A 46 04 B4 06 3C 0E-74 11 B4 0B 3C 0C 74 05 ..F...<.t...<.t.
126C:0360 3A C4 75 2B 40 C6 46 25-06 75 24 BB AA 55 50 B4 :[email protected]%.u$..UP.
126C:0370 41 CD 13 58 72 16 81 FB-55 AA 75 10 F6 C1 01 74 A..Xr...U.u....t
126C:0380 0B 8A E0 88 56 24 C7 06-A1 06 EB 1E 88 66 04 BF ....V$.......f..
126C:0390 0A 00 B8 01 02 8B DC 33-C9 83 FF 05 7F 03 8B 4E .......3.......N
126C:03A0 25 03 4E 02 CD 13 72 29-BE 46 07 81 3E FE 7D 55 %.N...r).F..>.}U
126C:03B0 AA 74 5A 83 EF 05 7F DA-85 F6 75 83 BE 27 07 EB .tZ.......u..'..
126C:03C0 8A 98 91 52 99 03 46 08-13 56 0A E8 12 00 5A EB ...R..F..V....Z.
126C:03D0 D5 4F 74 E4 33 C0 CD 13-EB B8 00 00 00 00 00 00 .Ot.3...........
126C:03E0 56 33 F6 56 56 52 50 06-53 51 BE 10 00 56 8B F4 V3.VVRP.SQ...V..
126C:03F0 50 52 B8 00 42 8A 56 24-CD 13 5A 58 8D 64 10 72 PR..B.V$..ZX.d.r
126C:0400 0A 40 75 01 42 80 C7 02-E2 F7 F8 5E C3 EB 74 49 [email protected]......^..tI
126C:0410 6E 76 61 6C 69 64 20 70-61 72 74 69 74 69 6F 6E nvalid partition
126C:0420 20 74 61 62 6C 65 00 45-72 72 6F 72 20 6C 6F 61 table.Error loa
126C:0430 64 69 6E 67 20 6F 70 65-72 61 74 69 6E 67 20 73 ding operating s
126C:0440 79 73 74 65 6D 00 4D 69-73 73 69 6E 67 20 6F 70 ystem.Missing op
126C:0450 65 72 61 74 69 6E 67 20-73 79 73 74 65 6D 00 00 erating system..
126C:0460 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
126C:0470 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
126C:0480 00 00 00 8B FC 1E 57 8B-F5 CB 00 00 00 00 00 00 ......W.........
126C:0490 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
126C:04A0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
126C:04B0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 80 01 ................
126C:04C0 01 00 0B FE BF FC 3F 00-00 00 7E 86 BB 00 00 00 ......?...~.....
126C:04D0 81 FD 0F FE FF FF BD 86-BB 00 E0 A9 75 00 00 00 ............u...
126C:04E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00 ................
126C:04F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 55 AA ..............U.③ 反汇编主引导区内容:判定MBR的代码区是否正常,对于数据区的基本情况,我们可以通过直观观察得出,但对于存在引导型病毒,或者引导区出现异常代码的情况,我们可能需要分析MBR中代码区的指令。这一般要对已经读入内存的引导区进行反汇编。反汇编用指令U,续前例:
-u300 l15D ;反汇编主引导扇区代码区内容
126C:0300 33C0 XOR AX,AX
126C:0302 8ED0 MOV SS,AX
…………
126C:045C 65 DB 65
126C:045D 6D DB 6D
④ 写内存单元,在我们的前例中,主分区类型是0B是FAT32的,假定这个类型实际是NTFS的,我们该如何修改呢?由于主分区类型的偏移是4C3H,我们可以用E命令写到内存单元中,从附表中查得NTFS的类型为07。因此-e4c3 7再比如说,假定我们想把无效的分区表清零,那么,我们应当用另一个命令F,这个命令可以用填充一个内存地址范围。清零分区表的操作就是-f4be 4ff 00,以下两个操作也比较常见。
重置80标记,-e4be 80
重置55AA标记,-f4ff 4fe 55 aa
不要忘记了,此时仅仅是改动了内存中的数据,并未写到硬盘上。因此需要用int 13中断把改写的结果,写回硬盘。续前例,
-a100
126C:0100 mov ax,301 ; 写操作一个扇区
-g=100 ;执行
其实,我们相当于修改了刚才输入的读主引导扇区程序,使程序变为。
126C:0100 mov ax,301 ; 写操作一个扇区
126C:0103 mov bx,300 ;从内存地址300
126C:0106 mov cx,1 ;0面1扇
126C:0109 mov dx,80 ;80H为硬盘,头为0
126C:010C int 13
126C:010E int 3 ;断点
⑤ 绝对磁盘内容的读出与写入
类似操作在FAT32结构硬盘被CIH破坏的修复中比较常见,我们后面将讲到恢复的基本思路就是用第二FAT表覆盖第一FAT表。那么无疑要读出第二FAT表的内容,再回写到第一FAT表的位置上。一般的来说,大量连续扇区的读出写入DISKEDIT进行非常方便,如果用DEBUG做则要写一段子程序,不过程序的主要技巧就是利用int 25绝对磁盘读中断读出的内容,而用int 26绝对磁盘写做内容写入。
5、数据可恢复的前提
有人觉得这个题目说法比较奇特,但数据恢复,作为一个数据再现的过程,一定要解决两个问题,第一是从哪里恢复的问题,第二是怎么恢复的问题。解决了这两个问题,我们事实上就把握了数据恢复的全部思想脉络。而这一部分就是从哪里恢复的问题。
①、 有效而及时的备份中是数据恢复最可靠的来源,在许多人倡导备份到秒的今天,恐怕不会有人怀疑这点。而有些备份机制则是系统内建的,比如两份FAT表。
②、 数据的实际有效性的判定是关键,对我们来说,硬盘无法自举、文件找不到、文件打不开等现象,其实并不与数据丢失画等号。因为此时往往数据只是从操作系统的角度是一种逻辑丢失,而从物理扇区意义上,它仍然存在或部分存在。最明显的就是文件删除的例子,事实上,这只是把文件首字节,改为0E而已。而此时文件体依然存在。
③、 数据损坏过程的可逆性分析:对数据的改变无非两种,取代和变换,前者是不可逆的,而后者则是可逆的。我们以杀毒为例,对于大多文件性病毒来说,那些以附加而非代换方式感染的文件型病毒,理想的杀毒过程就是感染的逆过程。这种分析也常见与重要信息被隐藏搬移或者被加密的情况,但分析将比较复杂。
④、 数据本身是否是标准信息:有些信息实际是通用或局部通用的,你无须考虑如何从本机抢救。只要相同或相近的系统版本就可以了,比如BOOT区、隐含扇区、WINDOWS的DLL文件等等。典型的例子如分区表的代码区,这是一段标准代码,事实上,它就放在你的FDISK程序里面,你可以用DEBUG把他提取出来。
⑤、 数据本身是否可以由其他信息统计再生:有些信息尽管丢失了,也没有备份。但它实际可以从其他数据中间接求得。最典型的就是主分区表中的分区信息,即使你把他清零也不必害怕,因为你可以从你几个分区中计算再生。
⑥、 破坏的完成程度:事实上,FDISK、FORMAT都不会彻底破坏数据,一般只有低格和扇区覆盖操作才会彻底破坏数据。但有时,破坏过程或者误操作过程会因人工终止、死机等原因不能完成。最明显的就是CIH病毒的例子,由于CIH是以1024字节为单位覆盖扇区,这当然是不可逆过程,于是我们最初都认为,破坏是很难恢复的,除非人工终止。事实上,当病毒覆盖某些扇区时会与9X系统发生冲突,从而造成死机,使数据得到了保护。 

第三章、数据恢复基本攻略
1、 硬件或介质问题的情况
①、硬盘坏:硬盘自检不到的情况一般是硬件故障,又可分为主版的硬盘控制器(包括IDE口)故障和硬盘本身的故障。如果问题在主板上,那么数据应当没有影响。如果出在硬盘上,也不是一定不能修复。硬盘可能的故障又可能在控制电路、电机和磁头以及盘片。如果是控制电路的问题,一般修好它,就可以读出数据。但如果电机、磁头和盘片故障,即使修理也要返回原厂,数据恢复基本没有可操作性。
②、软盘坏:当软盘数据损坏时,可以有几种处理,一种是用NDD修复,他会强制读出你坏区中的东西,MOVE到空白扇区中,这就意味着如果你的磁盘很满操作是没法进行的。你也可以用HDCOPY2.0以上版本READ软盘,他也会进行强读,使读入缓冲区的数据是完好的,你再写入一张好磁盘就可以了。当然这些方式,要看盘坏的程度。如果0磁道坏,数据也并非无法抢救,早先可以通过扇区读的方式,把后面的数据读出,不过一般来说,你依然可以HDCOPY来实验。
2、系统问题的情况
①、在硬盘崩溃的情况下,我们经常要和一些提示信息打交道。我们要了解他典型提示信息的含义,注意这些原因仅仅分析逻辑损坏而不是硬盘物理坏道的情况。
提示信息
可能原因
参考处理
Invalid Partition Table
分区信息中1BE、1CE、1DE处不符合只有一个80而其他两处为0
用工具设定,操作在前面已经讲了。
Error Loading Operating System
主引导程序读BOOT区5次没成功。
重建BOOT区
Missing Operating System
DOS 引导区的55AA标记丢失
用工具设定,把前面读写主引导区程序的DX=80改为180即可
Non-System Disk or Disk Error
BOOT区中的系统文件名与根目录中的前两个文件不同
SYS命令重新传递系统,
Disk Boot Failure
读系统文件错误
SYS命令重新传递系统,
Invalid Driver Specifcationg
如果试图切换到一个确实存在的逻辑分区出现以下信息,说明主分区表的分区记录被破坏了。
根据各分区情况重建分区表,或者用自动修复工具修复。注意分区丢失是最常见的故障之一,此时不要紧张,一般的说此时数据并没有问题,如果你不了解处理的方法。你可以选择我前面介绍的自动修复分区工具进行处理,他们大多只改写主分区表的数据区,不会影响你的其他数据。特别提醒大家,这些工具有的不支持8.4G硬盘,有的与BIOS对硬盘的识别有关系。如果你在一台机器上不行,可以换台BIOS不同的机器实验一下。
Bad or missing command interpreter
这是说找不到COMMAND.com,或者COMMAND文件坏了。
如果你COPY过去COMMAND文件还是如此,一般来说是感染了某种病毒。
Invalid media type reading drive
X ,Abort,Retry,Fail?
该盘没有高级格式化,或BOOT区中I/O参数表被破坏。
这里情况较多,手工处理比较复杂,特别指出,此时DISKEDIT可能无法运行,建议用工具修复。
Incorrect DOS Version
可能是文件版本不统一,对9X来说,有95,95osr/2,98,98 oem/2等版本,重新SYS时,不要弄错了。
用正确版本的启动盘重新SYS系统。
另外说明一下,对于比较老的机器还有1071和not found rom basic、ROM BASIC OK等提示,在目前机器中以消失。另外,当代码区完全被破坏的情况下,系统关于无系统的提示是来自BIOS的,这条提示与BIOS的种类有关。另外,FDISK/MBR对代码区的重建是我们经常采用的。再介绍一种比较极端的情况,就是硬盘自检正常,而用软盘和硬盘都无法正常启动的情况,这可能是,病毒或恶意程序利用,DOS3以上版本启动中都要检索分区表这一特点,把分区表置为死循环。造成启动中死机。网上曾经流传过DOS6.22k修改方案,其实是修改西文MS-DOS6.22的 IO.SYS,把C2 03 06 E8 0A 00 07 72 03替换为:C2 03 90 E8 0A 00 72 80 90就可以启动被类似情况锁住的硬盘。
②、WIN9X无法正常进入或工作:以下仅仅是对可能的软故障分析,没有考虑硬件故障.<BR>  进入图形界面前死机情况比较复杂,可能与加载的某些驱动有关可以在START MS WINDOWS时,用F8激活菜单,设置为step by step,看是哪项使系统死机。而后从CONFIG或者SYSTEM。INI中删除
进入图形界面后死机: 一般这与开机加载的程序有关进入安全模式(此时自动运行的程序将不能加载),对注册表中的HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun*中的键值和启动组中加载的程序进行分析。必要的予以删除。
显示IEXPLORE.EXE错误,不能进行任何操作可能有某个系统的动态连接库损坏覆盖安装WIN9X,或从其他机器上COPY损坏的连接库。(确定哪个库损坏一般比较困难)
频繁出现出错各种信息:一般是虚拟内存不足造成的看C盘是否剩余空间过少,或者打开的应用程序和窗口太多。
2、全盘崩溃和分区丢失
首先重建MBR代码区,再根据情况修正分区表。修正分区表的基本思路是查找以55AA为结束的扇区,再根据扇区结构和后面是否有FAT等情况判定是否为分区表,最后计算填回,主分区表,由于需要计算,过程比较烦琐,就不仔细介绍了,希望大家用前面介绍的工具,比如NDD处理。如果文件仍然无法读取,要考虑用TIRAMINT等工具进行修复。如果在FAT表彻底崩溃的情况下,恢复某个指定文件,可以用DISKEDIT或DEBUG查找已知信息。比如文件为文本,文件中包含“软件狗”,那么我我们就要把他们转换为内码C8 ED BC FE B9 B7进行查找。
3、文件丢失、误格式化的情况
一般的来说,文件删除仅仅是把文件的首字节,改为E5H,而并不破坏本身,因此可以恢复。但由于对不连续文件要恢复文件链,由于手工交叉恢复对一般计算机用户来说并不容易,在这篇缩略版中就不讲了,建议用工具处理,如果已经安装了Norton Utilities,可以用他来查找。另外,RECOVERNT 等工具,都是恢复的利器。特别注意的是,千万不要在发现文件丢失后,在本机安装什么恢复工具,你可能恰恰把文件覆盖掉了。特别是你的文件在C盘的情况下,如果你发现主要文件被你失手清掉了,(比如你按SHIFT删除),你应该马上直接关闭电源,用软盘启动进行恢复或把硬盘串接到其他有恢复工具的机器处理。误格式化的情况可以用工具处理。
4、文件损坏的情况
一般的说,恢复文件损坏需要清楚的了解文件的结构,并不是很容易的事情,而这方面的工具也不多。不过一般的说,文件如果字节正常,不能正常打开往往是文件头损坏。就文件恢复举几个简单例子。
类型
特征
处理
ZIP、TGZ等压缩包无法解压
ZIP文件损坏的情况下可以用一个名为ZIPFIX的工具处理。不过如果你的文件是从FTP站点上下载的,那么有可能是你没有定义下载模式为BIN。
自解压文件无法解压<BR>可能是可执行文件头损坏,可以用对应压缩工具按一般压缩文件解压。
DBF文件死机后无法打开<BR>典型的文件头中的记录数与实际不匹配了,把文件头中的记录数向下调整,遗憾的是公式我找不到了。
5、硬盘被加密或变换
此时千万不要FDISK/MBR,SYS等处理,否则可能数据再也无法找回,一定要反解加密算法,或找到被移走的重要扇区。对于那些加密硬盘数据的病毒,清除时一定要选择能恢复加密数据的可靠杀毒软件。
6、文件加密后密码遗忘
对于很多字处理软件的文件加密和ZIP等压缩包的加密,你是不能靠加密逆过程来完成的,因为那从理论上是异常困难的。目前有一些相关的软件,他们的思想一般都是用一个大字典集中的数据循环用相同算法加密后与密码的密文匹配,直到一致时则说明找到了密码。你可以去寻找这些软件,当然,有些软件是有后门的,比如DOS下的WPS,Ctrl+qiubojun就是通用密码。Undiskp的作者冯志宏是解文件密码的个中高手,大家不妨去他的主页看看。
7、系统用户密码遗忘的处理:最简单的方法就是用软盘启动(NT的你也可以把盘挂接在其他NT上),找到支持该文件系统结构的软件(比如针对NT的NTFSDOS),利用他把密码文件清掉、或者是COPY出密码档案,用破解软件套字典来处理。前者时间短但所有用户信息丢失,后者时间长,但保全了所有用户信息。对UNIX系统,我建议你一定先做一张应急盘。
[ 此帖被展昭在2008-12-13 17:53重新编辑 ]
本帖最近评分记录: 1 条评分 派派币 +10
清芷泫音

ZxID:200124


等级: 内阁元老
珍爱生命,远离摩羯。
举报 只看该作者 地板   发表于: 2008-12-13 0
第四章、恢复实例
下面举一些数据恢复或者软故障处理的例子,这些事例是从我参与大量的故障处理中选取的一些典型事例。在选取典型事例中,遵循了以下原则。
①、 处理过程能够表现一定思想,而不是纯粹的技术手段。
②、 处理过程本身并不算复杂,基本不出现汇编程序,一般读者能够理解。
③、 处理过程本身并不完美,中间可能犯了一些错误,有的甚至局部失败。可以使大家引为借鉴。
④、 处理过程本身并不仅仅是纯粹的逻辑思维,有人的心理活动对技术的干扰。以使大家能更好的避免这些。

1、 被CIH破坏硬盘恢复一例
委托恢复人:某银行
硬盘情况:CIH发作,蓝屏死机。该单位电脑人员曾用KV300 F10进行修复,但没有成功,又恢复了保存的MBR。
修复工具:
准备好软盘3张:
DISK1 -WIN98启动盘(带DEBUG)
DISK2-DISKEDIT等工具(此盘不要写保护)
DISK3-DOS下杀CIH的工具
基本思想:
1、FAT2没有损坏的情况,用FAT2覆盖FAT1。
2、FAT2也已经损坏的情况,我一般是只期待找回其中某些关键的文件了。
我们最期待的是这些文件是连续的。如果不连续的话,也并非没有可能,但这往往还要知道文件的一些细节,包括对一些文件本身的连接结构有了解。如果FAT2没有完全破坏,是有一定用处的,另外,一般来说,FAT16的硬盘因为FAT表靠前破坏的比较严重,一般两个FAT表都坏了,小硬盘也很难恢复了。
修复过程:
把我的硬盘摘下,挂上待恢复的的硬盘,开机,进入SETUP,检测硬盘,把参数记下——CLY 620 HEAD 128 PRECOMP 0 LANDZ 4959 SECTOR 63 MODE LBA。 用准备好的软盘启动:
A:>C:
显示Invalid drive specification
FDISK/MBR重建主引导记录。(这是个习惯),重新软盘引导:(可能没有必要)。
此时已经看的见C:硬盘。
启动DISKEDIT,启动过程中显示Invalid media type reading DRIVER C,哎呀,算了,还是先用DEBUG清空分区表,,并置80和55aa标志。
重新启动,再运行DISKEDIT,显示设定为READ ONLY,没关系,把TOOLS/CONFIGURATION中的只读选项去掉,存盘,好了,可以编辑了。由于当时接的硬盘有多块,我把这块当成了是一块只有C分区,所以没看别的东西,我们期待FAT2没有损坏,以用FAT2覆盖FAT1,在这个时候DISKEDIT要比DEBUG容易的多,在FIND OBJECT中选择FAT,查一下起始扇区,好的,在CYL 0 SIDE68 SEC 14,0000H,F8 FF FF 0F(FAT32的),好的,FAT2没坏。其实如果不用DISKEDIT的可以用一端小程序查,偏移0000的F8 FF FF。
由于以为只有 C分区,所以,上来就在FIND中查找IOSYS(IO和SYS中要有空格)以查找ROOT区。找到后观察,是否有C:下常见文件。好的,ROOT区没被破坏。记下了该扇区的CYL 0、SIDE 68、SEC 14,备用。FAT1一般前面已经被破坏了,但后面应该还在,这可以作为检查。因为是32位的,FAT1一般在CYL 0 SIDE1 SEC 33。因为有了ROOT区然后应该计算FAT表的长度了,因为FAT2到ROOT前一扇区为止,所以非常简单。
然后可以用FAT2覆盖FAT1,这里用DEBUG还是DISKEDIT都可以,如果用DEBUG一般是用INT 25读绝对扇区,再用INT 26写入,用DISKEDIT则比较简单。程序:(略)
然后可以恢复主引导记录、隐含扇区和BOOT区,可以先用NDD修复分区表,其他可以考虑可以考虑用标准覆盖法,如果你希望下一步由NORTO NUtilities来接手,这些都可以不做。我从另一台FAT32的机器上取来了相应的部分,写了进去。我这时发现好象有一个D盘。先看一下在说吧。
好了,关机串上我的硬盘,用NORTON Utilities 4扫描C盘,文件基本恢复,对C盘杀毒,WHY,没有发现病毒,换了2种杀毒软件还是没有病毒,现在显示C盘是948M,有一个D盘,但是95下无法浏览,DOS下乱码。于是打电话核实当时的情况,原来是26日那天,放进一张光盘,光驱灯亮了一会,就硬盘狂响,蓝屏死机了。应该证实我的推断一样,是光盘的AUTORUN程序有CIH病毒。所以说没有实时防御能力的软件是没有意义的。另外,他们的硬盘确实分两个区,而且重要文件在D区。然后在修复D盘吧,再回到DOS,用DEBUG查找结束标志为55AA的扇区,然后根据后面是否有FAT判定是否为扩展分区。此时可算出大小来返回修订主分区表。当然,许多工具也可以很好的完成这一工作。如果你没有把握,就用他们完成好了。其实我就是用自己的RE做的,否则手工做确实太麻烦。
经验总结:
①、你不要听信或者凭记忆想一块硬盘该是怎么样的,一定要自己去看,我就是犯了这个错误。
②、某些软件的修复功能确实如一些网友所讲可能有一定隐患,如果银行的电脑人员在用KV300 F10处理之前没有备份,可能要给我找些麻烦。
我们应当看到,恢复数据要本着几项原则。
①、 最好先备份,这也是而后我写HD-MIRROR的原因
②、 优先抢救最关键的数据
③、 在稳妥的情况下先把最稳定的鸡蛋捞出来,(理应先修复扩展分区,再修复C),最好修复一部分备份一部分。
④、 要先作好准备,不要忙中出错,此间,由于我的机器没有装过NORTON,先解压,习惯的敲了一个D:TEMP,这才想起来D盘已经是人家的硬盘,文件险些解在没有完全修好的C盘上。这种错误有时会经常发生。
  
2、 LINUX错误安装带来问题一例
委托恢复人:某信息港
硬盘情况:4.3G硬盘,分三个区,D、E中有很多重要数据。原来装95系统,做主盘。在试图向从盘上装LINUX的时,误将安装盘符选为C,而后发现终止,此时硬盘无法自举。软盘启动无法看到任何有效分区。
工具准备:
DISK1 - WIN98启动盘(带DEBUG)
DISK2 - DISKEDIT等工具(此盘不要写保护)
修复思想:
修复分区表中的扩展分区,重置主分区的分区类型。
修复过程:
用软盘启动,FDISK/MBR清除LILO,重建代码,用DISKEDIT调入MBR观察,已经没有了扩展逻辑分区的信息。80激活分区的类型已经变成 83(LINUX)这时我犯了与前面类似的错误,本应先修复分区信息,但我却依然去先试图C。而且修复C的时是否我又犯了一个致命的错误,那就是我算错了 C盘的大小。本来C盘是650M左右的一个分区,应当把分区类型置为06H(大DOS),而我误算C为340M,因此我置为了04H(普通FAT16),这时我想对C做进一步修复,就把硬盘串到我的机器上,开机后C盘可见,文件似乎完好。此时我选择用NU来自动修复它的C盘。最后的结果是,由于我选错了分区类型,修复使C盘彻底崩溃。我重新起机后,再试图用NU检测C时,我的98
马上蓝屏,另一个恶果就是我决定从软盘启动,用DISKEDIT查看时,发现可能由于I/O参数表的损坏,DISKEDIT无法启动了。而后,我用RE恢复分区表,但在我的方正上,RE竟然溢出,后来,我找到一台兼容机,在上面运行RE,这才恢复了D、E两个分区。此时,委托我恢复的朋友打来电话,说只找到D、E就可以。我这才放心。
经验总结:分区类型只是一个字节,却会带来如此严重的后果。可见,修复数据必须异常慎重。

3、 NT SERVER硬盘崩溃一例
相应情况:
这是单位里的一台NT服务器。三个NTFS分区,有重要数据在内。硬盘崩溃,不能启动,软盘启动后,用NTFSDOS 不能映射任何逻辑分区。
工具准备:
DISK1 - WIN98启动盘(带DEBUG)
DISK2 - DISKEDIT等工具(此盘不要写保护)
修复过程:
用DEBUG 读取主分区表,发现完全混乱。反汇编后发现为一段有逻辑意义的代码,我当时十分紧张,以为硬盘被加密了。只好向一个高手HIT-007求援,不料他用 DEBUG看了两下,马上退出来,做了FDISK/MBR。我大惊失色。但重起后,硬盘竟能启动进入NT,当然只剩下C一个分区。而后我很容易的恢复了另外两个分区。他对我说,你一看MBR中的内容就被吓住了,我向后看后面的一些系统扇区情况都是正常的。这就说明只是MBR不正常而已。
经验总结:数据恢复中情绪的因素很重要,无论什么情况不能慌张,因为这可能影响到你 是否能全面冷静的思考。

4、 NOVELL服务器掉电问题一例:
相应情况:
这是两年前处理过的一个问题,我当时在某证券营业部兼职做网管,开市时,一台NOVELL服务器因UPS故障突然掉电重起。当时的交易系统还是DBF数据库,按照规程,应该运行一个全部数据库重建索引例程。但索引中,却有7个库无法重建,检查发现,是库无法打开。
修复情况:
我恍惚记得深圳一个证券界电脑工程师对我说过,DBF文件头在突然死机中可能会损坏。但不知细节如何。我初步判定,由于库写入时,先修改文件头中的记录总数,再写入记录。可能是掉电时文件头已经修改但记录没有成功写入,因此,应该是记录数不符。但文件头中记录数在哪里呢。我于是这样处理,把这些损坏的数据库和一个完好的数据库COPY到本地,用FOXPRO打开看到记录数,换算成16进制。然后查找这个HEX串,判定找到记录数地址,(这个库记录数应当比较多,减少混淆的可能,否则容易找错)。由于我不知道处理DBF的公式,只好把损坏数据库的记录数每次减一,然后再用FOXPRO打开实验。其中5个数据库减一后就可以打开,只有一个数据库直到减4后才正常。全处理过程从掉电开始只有20分钟,基本没有影响交易进行。
经验总结:当出现问题,但你不知道确切的处理方法时,要充分进行分析。

5、 某财务系统数据处理一例:
相应情况:
也是我在证券公司处理的情况,某单机版财务系统,基于Clipper,当时是年初安装,使用正常至6月份底,突然发现该月数据紊乱,与实际出入巨大。出品公司的人来看过后,声称需要1周处理时间和近万元的处理费,我听说后,建议财务部拒绝其“讹诈”,由我来处理。
分析处理过程:
由于我对财务一窍不通,我请财务经理讲明了情况和一些概念,又分析了系统的大致结构。我发现本月每一笔数据都是正常的,只是因为多了上千笔没有发生的收支,才使汇总表发生了变化。那么这些数据是哪里来的,就成了问题的关键。在看了该软件的初始状态后,我似有所悟,问财务软件初装后并没有的上百个“科目”是从哪里建立的。财务经理回忆是上年底从某营业部发来的,我当时就明白了,那个营业部是上一年6月成立的,问题显然出在该营业部提供的初始科目不为空,由于上年1-5月该营业部尚不存在,所以数据为空,而该营业部6月以后的数据则随科目转入了我所在营业部的财务系统。经过对当初转入初始科目的对照,证实了我的判断。于是,我做了一段程序,按照对应关系把相关数据从系统库中摘除。从分析问题到问题的解决,只用了三个小时。
经验总结:
①、 当出现数据紊乱时,很重要一点就是找到干扰源。
②、 数据处理绝非仅仅就是一个技术问题,特别是金融系统,一定要得到这方面的专业人士的配合。我想如果没有那位财务经理的信任鼓励和让我对会计知识的速成,问题处理就不会如此顺利。
[ 此帖被清芷泫音在2008-12-14 10:45重新编辑 ]
本帖最近评分记录: 2 条评分 派派币 +2
展昭

ZxID:99617


等级: 内阁元老
原谅我飞,曾经眷恋太阳~
举报 只看该作者 4楼  发表于: 2008-12-13 0
第五章、附表
1、 磁盘分区表
地址|说明|字节数
1BEH|分区信息1|10H
1CEH|分区信息2|10H
1DEH|分区信息3|10H
1EFH|分区信息4|10H
1FFH|结束标志55AA|2H
2、 分区信息说明
偏移长度含义
0|字节| 激活状态,80H:活动分区(可引导区),0H:非活动分区
1|字节|分区起始的磁头
2|字 |分区起始的扇区和柱面
4|字节|分区类型
5|字节|分区终止的磁头
6|字|分区终止的扇区和柱面
8|双字|分区起始决对扇区
0CH|双字|分区扇区数
3、 分区类型表(这是一个比较全的分区类型表了)
0 Empty
1 FAT12
2 XENIX root
3 XENIX usr
4 FAT16

六、硬盘维修秘籍

许多人遇到BIOS中检测不到硬盘或报错的时候,就将其报废。其实,如果开机后,硬盘在自检时能听到磁盘旋转的声音,估计主电机和控制电路板均无故障,还是有挽回余地的。需要注意的是,硬盘是一种精密的器件,很脆弱,维修前应先将双手洗净,释放掉人体残存的静电再进行操作。

无法找到硬盘的情况

对于出现“HDD Not Detected”错误提示的硬盘,首先检查硬盘外部数据信号线的接口是否有变形,接口焊点是否存在虚焊。排除以上的可能后,取下硬盘后盖,露出电路控制板。拧下控制板上的固定螺丝,将控制板与硬盘主体分离。这时可以看见硬盘主体的两排弹簧片。一排作为主电机的电源,另一排作为硬盘主体的磁头机械臂驱动线圈电源以及硬盘主体与电路控制板间数据传输接口。对于无特殊封装的硬盘,往往可以看见弹簧片与控制电路板对应部位均有灰尘。用脱脂棉蘸无水酒精清洁,对弹簧片变形的部位校形,并除去氧化层,一般情况下均可恢复正常。
如果以上处理无效,那就得打开硬盘主体。选择一个灰尘很少的环境,拧开硬盘前盖的螺丝(有的是用胶粘牢)。取下硬盘的前盖,这时就可清楚地看到盘面。首先用数字万用表检测磁头机械臂驱动线圈是否断路。该线圈的正常阻值为20Ω左右。其次检测磁头上的连线是否断开。每张盘面的两侧均有一个磁头,每个磁头均有两根连线接到磁头机械臂上的集成芯片上。该芯片常见的型号为H1710Q,作用是将磁信号转变为电信号,再送到电路控制板处理。磁头阻值应在23Ω~26Ω之间。若磁头阻值较大,说明磁头损坏。磁头连线与芯片H1710Q相连,H1710Q对应脚阻值应在1.7kΩ左右,若在1.2kΩ以下说明该芯片已被击穿,可与排线一起更换。
若磁头上的连线断路,可用直径0.2mm的优质漆包线取代。一端压在磁头的金属弹片上,另一端焊在H1710Q相应的脚上。注意将漆包线卡在机械臂相应的卡槽内,并用少许502胶水固定,防止硬盘转动时与漆包线相摩擦。将硬盘各部分复原后,最后用702硅胶将硬盘周围封死,防止灰尘进入。由于磁头体积很小,不易将漆包线卡在上面,最好在放大镜下操作。这时千万不可用力过猛,否则会造成磁头损坏,所以要小心加小心。经这样修复开机后硬盘可恢复正常。

提示硬盘出错的情况

对于出现提示“HDD Controller Error”错误的硬盘,大都是由于某种原因造成硬盘主引导记录(MBR)上文件受损。MBR位于0磁头/0柱面/1扇区上,由Fdisk.exe对硬盘分区时生成。若MBR受损,微机会提示HDD Controller Error,实际上是零磁道上文件损坏,这时格式化是解决不了问题的,必须用专用软件来处理。首先用系统盘在A盘启动后,运行Scandisk命令检查C 盘。
若零磁道未损坏,只需用Norton8.0将该磁道上的文件修复即可。具体做法为:
找一台内置硬盘与待修硬盘型号规格完全相同且装有 Norton8.0版软件的电脑,将待修硬盘与硬盘电源线相连接,但硬盘信号线不接,跳线不变。
①开机后运行Disk Edit命令,从菜单Tools中点取CONFIGURATION项,将Read Only项取消;
②从下拉菜单O-biect中选取Driver项,将Hard Disk类型设置为Physical Disk,点击OK项确定;
③从Ob-ject菜单中选取Partition Table项,将接在完好硬盘上的信号线拔下,接到待修硬盘上,点击OK项确定;
④选择Hard Disk1点击OK项确定,再从Write Ob-ject to Physical Sectors对话框中将Cylinder、Side、Sector分别设置成0、0、1点击OK项确定。当出现Warning对话框时选Yes项。退出 Norton软件,这样就将硬盘的主引导信息恢复。重启后硬盘恢复正常,原硬盘内的文件也不会丢失。

若零磁道损坏的硬盘,先仍按上述步骤用 Norton8.0软件处理,只是到了第三步时,将Cylinder、Side、Sector分别设置成1、0、1点击OK项确定。当出现Warning 对话框时选Yes项。退出Norton软件,重新启动计算机,在BIOS设置硬盘自动检测一栏中可以看到,CYLS数值减少了1个。如原来CYLS为 2112,则变为2111。说明原硬盘分区表是从C盘的0柱面开始,现从1柱面开始。保存BIOS设置后退出。重新分区、格式化后硬盘恢复正常。另有一些硬盘,自检时提示“HDD Controller Error”。采用以上方法处理无效,只能报废。Game Over!!!


七、硬盘诊断步骤

测量

主板上COMS RAM电路是否为电池有故障,或元器件(如二极管、三极管、电阻、电容等)损坏能原因而CMOS中的硬盘配置参数出错。

主板上COMS RAM电路是否为电池有故障,或元器件(如二极管、三极管、电阻、电容等)损坏能原因而CMOS中的硬盘配置参数出错。

---通过加电自测,若屏幕显示错误信息 “1701”或 “Hard Disk Error”,说明硬盘确实有故障。但也可能是硬盘适配卡未插好、或者硬盘与硬盘适配器的插接处未插好、或者硬盘适配器有故障等。
---关机,拆开机盖,测+5V、+12V电源是否正常,电源盒风机是否转动。以此来判断是否外电路缺电。
---检查信号电缆线,插头与硬盘适配卡是否插好,有无插反或接触不良。可尝试交换一些电缆插头试一下。
---采用“替代法”来确定故障部件。找一块好硬盘适配卡(或多功能卡)与该硬盘适配卡比较,判断是硬盘适配卡还是硬盘驱动器本身有问题。
---观察步进电机端止档销是否卡死,如卡死,用手拨回起始位置。

以上几个步骤,用户需要仔细检查、测试、分析,找出坏的元器件进行修理,或者更换硬盘适配卡。
经以上的处理后,只要不是硬盘盘体本身损坏,仅仅是一般性的接插件的接触不良或外电路故障则多数能够迅速排除。

八、硬盘故障分析与处理步骤

下面仅简要介绍物理故障的分析与一般的处理步骤:短路,需做进一步的检查。

1.测电阻法

该测量方法一般是用万用表的电阻档测量部件或元件的内阻,根据其阻值的大小或通断情况,分析电路中的故障原因。一般元器件或部件的输入引脚和输出引脚对地或对电源都有一定的内阻,用普通万用表测量,有很多情况都会出现正抽电阻小,反向电阻大的情况。一般正向阻值在几十欧姆至100欧姆左右,而反向电阻多在数百欧姆以上。但正向电阻决不会等于0或接近0,反向电阻也不会无穷大,否则就应怀疑管脚是否有短路或开路的情况。当断定硬盘子系统的故障是在某一板卡或几块芯片时,则可用电阻法进行查找。关机停电,然后测量器件或板卡的通断、开路短路、阻值大小等,以此来判断故障点。若测量硬盘的步进电机绕组的直流电阻为 24欧,则符合标称值为正常; 10欧左右为局部短路; 0欧或几欧为绕组短路烧毁。
硬盘驱动器的扁平电缆信号线常用通断法进行测量。硬盘的电源线既可拔下单测也可在线并测其对地阻;如果无穷大,则为断路;如果阻值小于10欧,则应怀疑局部.  
  
2.测电压法

该测量方法是在加是怕情况下,用万用表测量部件或元件的各管脚之间对地的电压大小,并将其与逻辑图或其它参考点的政党电压值进行比较。若电压值与正常参考值之间相差较大,则青蛙该部件或元件有故障;若电压正常,说明该部分完好,可转入对其它部件或元件的测试。一般硬盘电源与软盘插线一样,四个线头分别为+ 12V、+5V、-5V和地线。硬盘步进电机额定电压为+12V。硬盘启动时电流大,当电源稳压不良时(电压从12V下降到10.5V),会造成转速不稳或启动困难。Ⅰ/O通道系统板扩展槽上的电源电压为+12V、-12V、+5V和-5V。板上信号电压的高电平应大于2.5V,低电平应小于0.5V。硬盘驱动器插头、插座按照引脚的排列都有一份电压表,高电平在2.5-3.0V之间。若高电平输出小于3V,低电平输出大于0.6V即为故障电平。逻辑是怦的测量可用试波器测量或者用逻辑笔估算。

3.测电流法

如果有局部短路现象,则短路元件会升温发热并可能引起保险丝熔断。将万用表串入故障线路,核对电流是否超过正常值。硬盘驱动器适配卡上的芯片短路会导致系统析负载电流加大,驱动电机短路或驱动器短路会导致主机电源故障。硬盘电源+12V的工作电流应为1.1A左右。当硬盘驱动器负载电流加大时,会使硬盘启动时好时坏。电机短路或负载过流轻则保险熔断,重则导致电源块、开关调整管损坏。在加大电流回路中可串入流假负载进行测量。如有保险的线路,则可断开保险管一头将表串入进行测量。在印刷板上的某芯片的电源线,可用刻刀或钢锯条割断铜泊引线串入万用表测量。电机插头、电源插头可从卡口里将电源线起出来串入表测量。
[ 此帖被清芷泫音在2008-12-14 10:45重新编辑 ]
展昭

ZxID:99617


等级: 内阁元老
原谅我飞,曾经眷恋太阳~
举报 只看该作者 5楼  发表于: 2008-12-13 0
— (清芷泫音) LG上我号去把我的那楼编辑了吧。我不想删帖。 (2008-12-14 06:43) —
已完成
[ 此帖被清芷泫音在2008-12-14 10:44重新编辑 ]
wq465

ZxID:1922480


等级: 内阁元老
配偶: evensinly67
幸福终于因为你 而降临在我身上
举报 只看该作者 6楼  发表于: 2008-12-13 0
一般人看不懂的 我知道  
这个已阅有什么用啊。。
怎么取消已阅

楼主留言:

已阅选项是版主标记帖子用的.在站务处理,奖励申请,猴岛基地等版块中标记[已阅]表示已解决.

caroltan

ZxID:2359645

等级: 禁止发言
举报 只看该作者 7楼  发表于: 2008-12-21 0
我晕呀,看不懂啦,有简单版吗?
发帖 回复