您的位置:首页资讯教你一招 → CIH硬盘数据恢复方法与实例

CIH硬盘数据恢复方法与实例

时间:2004/10/15 1:19:00来源:本站整理作者:蓝点我要评论(0)

                   

一、基础知识
  主分区和扩展分区结构基本相似,以下以主分区为例。

  主引导记录(MBR):MBR占一个扇区,在CYL 0、SIDE 0 、SEC 1,由代码区和分区表构成。其中代码区可以由FDISK/MBR重建。

  系统扇区:CYL 0、SIDE 0 、SEC 1-CYL 0、SIDE 0 、SEC 63,共62个扇区。

  引导区(BOOT):CYL 0、SIDE 1 、SEC 1 这是我们过去称的DOS引导区。也占一个扇区。

  隐藏扇区:CYL 0、SIDE 0 、SEC 1,如果是FAT16那么占一个扇区,如果是FAT32则由此占32个扇区。

  文件分配表:一般有两个FAT表,FAT12、FAT16的第一FAT表一般均在0-1-2,FAT32的第一FAT表在0-1-33。FAT表是记录文件占用扇区连接的地方,如果两个FAT表都坏了,后果不堪设想。由于FAT表的长度与当前分区的大小有关所以FAT2 的地址是需要计算的。

  根目录区:(ROOT)这里记录了根目录里的目录文件项等,ROOT区跟在FAT2后面。

  数据区:跟在ROOT区后面,这才是数据内容。

  2、主引导记录简单说明

  主引导记录是硬盘引导的起点,关于代码区不多说了,其分区表,比较重要的是2个标志,在偏移1BE,处的80 的标记表示系统可引导,且整个分区表只能有一个80标记。 另一个就是结尾的55 AA标记。用来表示主引导记录是一个有效的记录。

  其实,无论MBR还是隐含扇区还是BOOT区,都不重要,这些重建都比较容易。对数据恢复来说,能否成功的找回数据文件是重要的。另外,由于FAT表记录了文件在硬盘上占用扇区的链表,如果2个FAT表都完全损坏了。那么恢复文件,特别是占用多个不连续扇区文件就相当困难了。
基本思路是:

  1、FAT2没有损坏的情况,用FAT2覆盖FAT1。

  2、FAT2也已经损坏的情况,我一般是只期待找回其中某些关键的文件了。我们最期待的是这些文件是连续的。如果不连续的话,也并非没有可能,但这往往还要知道文件的一些细节,包括对一些文件本身的连接结构有了解。如果FAT2没有完全破坏,是有一定用处的,另外,一般来说,FAT16的硬盘因为FAT表靠前破坏的比较严重,一般两个FAT表都坏了,小硬盘也很难恢复了。

  二、一个基本恢复被CIH破坏硬盘数据的例子   一直有朋友问手工恢复的技巧,近来恢复了多块被CIH破坏的硬盘,之所以选取这一次,是因为尽管恢复成功,但其中犯了一些错误,值得注意。

  委托恢复用户:某银行系统

  硬盘情况:CIH发作有该单位电脑人员曾用KV300 F10进行修复,但没有成功,又恢复了保存的MBR。

  准备好软盘3张: 
  DISK2:DISKEDIT等工具(此盘不要写保护)

  DISK3:DOS下杀CIH的工具

  把我的硬盘摘下,挂上待恢复的的硬盘,开机,进入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, 没关系,把CONFIGURATION中的只读选项去掉,存盘,好了,可以编辑了。

  由于当时接的硬盘有多块,我把这块当成了是一块只有C分区(这是等待修复的另一块硬盘),所以没看别的东西,我们期待FAT2没有损坏,以用FAT2覆盖FAT1,在这个时候DISKEDIT要比DEBUG容易的多,在FIND OBJECT中选择 FAT,查一下起始扇区,好的,在CYL 0 SIDE68 SEC 14,0000H,F8 FF FF 0F (FAT32的),好的,FAT2没坏。其实如果不用DISKEDIT的可以用DEBUG查,偏移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可以MARK FAT2的内容COPY下来,在WRITE到FAT1。

  然后可以恢复主引导记录、隐含扇区和BOOT区,可以先用NDD修复分区表,然后可以考虑用标准覆盖法,如果你希望下一步由NORTON Utilities ,来接手这些都可以不做。我从另一台FAT32上取来了,相应的部分,写了进去。我这是发现好象有一个D盘。先看一下在说吧。好了,关机串上我的硬盘,用NORTON Utilities扫描C盘,文件基本恢复,对C盘杀毒,WHY,没有发现病毒,换了2种杀毒软件还是没有病毒,更糟糕的是,显示C盘是948M,有一个D盘,但是95下无法浏览,DOS 下乱码。于是打电话核实当时的情况,原来是26日那天,放进一张光盘,光驱灯亮了一会,就硬盘狂响,蓝屏死机了。应该证实我的推断一样,是光盘的AUTORUN程序有CIH病毒。所以说没有实时防御能力的软件是没有意义的。另外,他们的硬盘确实分两个区,而且重要文件在D区。(气死我了!)

  然后在修复D盘吧,再回到DOS,用DEBUG查找结束标志为55AA 的扇区,由结构判定是否为扩展分区。此时可算出大小来返主分区表。当然,许多工具也可以很好的完成这一工作。如果你没有把握,就用他们完成好了。
经验总结

  1、你不要听信或者凭记忆想一块硬盘该是怎么样的,一定要自己去看,我就是犯了这个错误。

  2、KV300 F10确实如一些网友所讲,有一定隐患,如果银行的电脑人员在用KV300 F10处理之前没有备份,可能要给我找些麻烦。

  3、恢复数据要本着几项原则: 
  其实看来,如果FAT2没有损坏的情况下,恢复C盘数据是非常容易的,可以编程实现。如果FAT2损坏了,最容易恢复的当然是只占用一个扇区的文件和连续的文件。

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 电视盒子怎么看百度云迅雷9怎么关闭右侧 迅迅雷99.99下载不完怎么网易云音乐怎么上传歌

最新文章 2022支付宝万能福扫福微信迎新春状态怎么设 微信小老虎头像怎么设置 微信ID后面设置小老抖音压岁钱卡怎么获得2022 抖音压岁钱获取方微博隐私保护怎么设置 微博隐私保护功能完善今日头条2022年集卡活动开启时间 今日头条2

人气排行 智学网怎么登录 智学网怎么查分数 智学网统教你怎么写电子邮箱格式?以163和QQ邮箱为例腾讯大王卡用了后悔怎么办 腾讯大王卡值得办缺少或丢失xinput1_3.dll解决方法,xinput1应用程序无法正常启动0xc000007b解决方法快播关闭怎么办?快播不能用了怎么看片将pdf文件转换为word文件的最简单方法如何破解QQ空间密码和权限