近日, 浏览一些IT网页发现有一些因为硬盘数据丢失导致许多不该发生的事情的产生,对我们的学习以及工作产生很大的影响,对于解决硬盘数据丢失的一些常见问题我还是有一点心得的,所以我希望通过我以下介绍的硬盘数据恢复方法来对您遇到的问题给予一些帮助。
首先,我们需要在虚拟机的环境下进行数据恢复实验,为保证此实验的实用性我请朋友创建了一块问题硬盘,就是对硬盘进行一些破坏性操作。如在硬盘中写入、删除数据、格化硬盘;建立、删除硬盘分区等等,目的就是让我们在不明确硬盘情况的情况下来恢复硬盘数据。如下我们开始具体的操作。
如下图所示,在虚拟机上挂入那块问题硬盘,以下我们叫这块问题硬盘为“硬盘1”。
我们暂时不需要对1盘进行任何操作,我们还是要借助一些恢复工具来了解一下1盘的基本情况,在此次实验中我们使用winhex工具(自我感觉这款小工具不错,使用价值蛮搞的),大家可以借鉴以下
我们打开winhex,点击工具—磁盘编辑器出现以下界面
在图中标绘的紫色圈区域的四个字节(十六进制)表示的是分区1的大小,位置在0柱面/1磁头/1扇区的2 和8 的交汇处,这说明1分区是NTFS格式的分区,根据数据恢复的基本知识得出:
分区1 0/1/1 - 318/254/63 63 – 5124734
63是默认的硬盘起始扇区我们不必对其进行拗述,
5124734= 4E323F+3F(3F是63的十六进制数)
以上就是分区1的起始和终结点
我们点选图中的绿色圆圈输入5124734然后我们就在有边的资料面板中看到分区1 的结束点如图所示:
我们使用同样的办法分别算出分区2和分区3
如上图,看出分区2 是FAT16 的文件系统,此类文件系统的大小标识字节位于其其实起始扇区的2和0的交汇处如图:
由于分区2 是FAT分区所以在我们计算分区2的结束扇区的时候需要减一。
分区2 319/0/1—471/254/63 5124735—7582679
此后我们打开分区3他也是一个NTFS分区使用和分区1的方法
在起始扇区的2和8 位置找到分区3 的大小标识字节
用计算机算出这个十六进制数的十进制数 加上分区三的起始值(分区2结束扇区+1)下图显示出分区3 的起始磁头、扇区、柱面和大小和计算机算出的结束扇区,左下角的蓝色圈标出的分区3的起始扇区 根据这些条件得出12498569这个结束扇区,
至此我们已经得出所有的分区的起始和结束扇区 我们接下来开始将这些数据转化成为十六进制数,然后在写入起始分区表。
分区1
0/1/1 - 318/254/63
00 01 01 00 07 FE 7F 3E
63 – 5124734
3F 00 00 00 7E 32 4E 00
上面的这个蓝色十六资字节是有他们的特殊意义的我们分别解释一下
第一个字节的内容是分区的引导标志,00表示不是引导分区,80表示是引导分区。
第二,三,4字节表示分区的起始磁头,扇区,柱面,此次试验中的这三个参数分别是01 01 00,它们分别表示第一个分区从0柱面1磁头1扇区开始。第五个字节表示分区类型,07表示NTFS分区,常用的类型有 0F(扩展分区),0B(FAT32),06(FAT16)。
第六,七,八字节分别表示分区的结束磁头,扇区,柱面。值得注意的是这里有一些与众不同的地方,分区的起始扇区和结束扇区并不是使用了一个完整字节。由于C/H/S中扇区编号从1到63,因此用一个字节表示有些浪费,一个字节由八个二进制数组成,扇区编号只用了低六位,高2位给柱面用了。因此,表示柱面其实用了10个二进制数,其中高2位是从扇区参数中借来的。结合此次试验来看,六,七,八参数分别是 FE 7F 3E,分析一下,FE表示分区的结束磁头是254,7F拆为二进制是01111111,低六位是111111,用来表示分区的结束扇区,也就是说结束扇区是63。7F拆开后高2位01给了柱面用,也就是说分区的结束柱面不是3E,而是13E,13E等于十进制的318。这样我们就明白啦,第一个分区开始在0/1/1,结束在318/254/63。
第九,十,十一,十二字节,这四个字节代表分区之前的扇区数,意思是从分区的起始到硬盘的第一个扇区之前有多少扇区,其实就是告诉我们分区从哪里起始。分区1中这四个字节的内容是3F 00 00 00。
第十三,十四,十五,十六字节代表分区的大小,这四个字节表示分区的扇区数。分区1这四个参数为7E 32 4E 00,高低位互换一下,分区的扇区数为00 4E 32 7E ,换算成为十进制后得出结果为5124734,我们就知道分区1 从63扇区开始结束到5124734。
根据这个方法 并且注意分区的文件系统来相应的填写对应的值我们就可以依次算出三个分区的对应值
分区2
319/0/1—471/254/63
00 00 41 3F 06 FE 7F D7
5124735—7582679
7F 32 4E 00 D7 B3 73 00
分区3
472/0/1 — 777/254/63
00 00 41 D8 07 FE FF 09
7582680 — 12498569
D8 B3 73 00 89 B6 BE 00
如此我们已经完成硬盘数据恢复的前期准备啦
到0扇区找到后64位的分区表填写我们多的的数据保存退出即可。
大家请看我们在点选“访问”键的时候没有在出现此前出现在分区后面的“del”的后缀,我们为此感到高兴吧 说明我们的测验已经成功啦一半。
红色圈子的里面就是先前出现的“del”后缀
根据经验我们需要重新启动计算机。使我们的配置尽快生效
重新启动之后,右击“我的电脑—管理—磁盘管理”出现如下图面,自动出现硬盘1的原先的分区,由于我在Xp的系统上做的测验所以自动出现分区,如果是windows2003 的系统做试验我们就需要“更改驱动器名和路径”。
来吧 让我们看一看我的朋友之前做的操作吧,
奥, 原来如此呀,他在我的硬盘里面放进啦三个名叫DOS7镜像文件的压缩包,就这样我就找回啦我的数据。
为了确认恢复数据的正确性,我画蛇添足一下,在虚拟机上安装啦“易我”工具,这是一款旨在扫描恢复数据的实用价值比较高,恢复效率较强的数据恢复软件,如下图,
我们直接点击高级恢复,进入下一个界面,
找到那块需要恢复的硬盘进行扫描一下。
从图中可以看出硬盘1确实拥有三个分区,并且和我们先前确定的文件系统相符合,我们一次扫描一下三个分区,
看,是不是出现啦DOS7 镜像文件这个压缩包啦呢,哈哈!
功夫不负有心人,我成功的完成啦这次测验,相信对你有一定的启示吧!