|
首先,像坛子中的各位大神致敬,有了你们的分享和远远前行的背影,才有了我们丰富的资源和不断追逐的脚步。这里,作为学习数据恢复的新人菜鸟,斗胆发第一篇文章,跟大家聊聊自己的心得和困惑。如果有什么不对的地方,希望大家勇于拍砖。
1个礼拜多的时间学习了文件系统,这里跟大家推荐一本书,想必很多人也已经看过了,《数据恢复技术深度揭秘》对于一位新接触数据恢复的人来说写得还比较基础,并且有实例供大家分析。言归正传,Win7系统下虚拟4个分区,1个主分区,3个扩展分区。这里介绍两种方法恢复MBR。
方法一:忽略掉EBR,只根据DBR的起始结束位置和分区大小来写MBR。
因为是NTFS分区,搜EB5290,记录下当前的扇区号2048和分区大小4196351。NTFS分区大小偏移位置在208H处,8个字节32bit(通过数据解释器可以看到) 那么它的结束扇区就是起始位置+分区大小=4198399。跳转到4198399扇区查看一下。然后接着向下搜EB5290,找下一个扇区起始位置4200448,和分区大小6291455。以此类推,找到4个分区的起始截止位置和分区大小后,开始填写MBR了。第一个字节00或80都行,因为我这是虚拟分区所以填写00。然后的3个字节可以随便填写,他们代表磁道柱面开始信息,然后是07(NTFS标志),然后3个字节是磁道柱面结束信息,也是随便填写。接下来是重点,接着的4个字节是第一块盘的分区起始位置即2048,然后的4个字节是第一块盘的分区大小,这里注意分区大小要+1。因为计算机计数是从0开始的,类似于我们小学学习的植树问题。然后写完4个分区后,即可重现4个分区。
方法二:通过EBR起始位置和大小,填写MBR。
第一个EBR的位置是在第一个分区结束后的下一个分区,即4198400(EBR1)。以此类推找到EBR2=10491904,EBR3=12591104。
从EBR1里开始写数据。第一行:EBR1的起始位置(隐藏分区大小)=下一个分区开始-EBR1起始扇区号 , 大小即下一个分区大小。
第二行:开始位置该指向下一个EBR,即EBR2的相对位置。因为EBR的相对位置都是以EBR1为基准的,所以这里的大小为EBR2-EBR1。大小事下个分区大小+隐藏分区大小。 以此类推写出EBR2和EBR3的。注意扩展分区的标志是05而不是07。
最后是写MBR,第一个分区表项:第一个盘的起始位置2048 和 分区大小 。
第二个分区表项:EBR1开始位置 和 (剩下三个分区的大小之和+隐藏分区数*3)
OK,4个分区也都恢复出来了。
一点心得体会跟坛友分享,需要学习的知识还有很多,不过能恢复出这4个分区还是很有成就感滴!!这里感谢坛子里的所有乐于分享的人和齐哥。我知道这只是些皮毛,望大神轻拍~
|
-
|