Winhex 恢复三个分区

通过之前的博客WinHex恢复分区,我们知道

在MBR中,一共有四行是我们分区的引导,所以,我们手动只能创建三个主分区,通过工具软件,我们最多可以创建四个主分区

那么测试:如何创建四个主分区?
首先,我们创建三个主分区

在创建第四个分区的时候,观察会发现自动变成了一个扩展分区就是绿框框,绿框框里面才是我们创建的分区,被称为逻辑分区

我们使用Winhex打开创建的虚拟磁盘
通过之前讲的07代表NTFS的分区格式,那么0F代表扩展分区的格式

我们手动把0F改为07ctrl + s保存


回到磁盘管理重新扫描查看


发现我们的扩展分区和逻辑分区变为了主分区,而且会提示我们格式化,当我们格式化后,就拥有了四个主分区

恢复三个主分区

由于三个以后就会自动生成扩展和逻辑分区,这里我们先学习如何恢复三个主分区

上节我们知道MBR引导扇区通过四行分区表来定位到创建的分区2-5这几列控制分区类型

6-9列控制分区的开始

A-D列控制分区的大小

当我们手动删除分区的时候,其实并没有删除分区的数据其实还存储在扇区中,我们手动删除的只是MBR索引,那么只需要将MBR四行分区表中填入分区的开始和大小即可恢复
首先手动创建三个分区并将三个分区删除,进入WinHex打开我们创建的虚拟磁盘,在之前有介绍


这四行没有任何数据,正式我们想要的

寻找第一个分区

使用16进制搜索,在1扇区往下搜索55AA,条件偏移为512=510


我们的扇区跳转到了2048扇区

这里磁盘开头为EB 52 90,是NTFS的标识,4E 54 46 53,代表ASCII值NTFS
这些都是固定格式,当然还有很多的固定格式
上节我们知道1C-1F为磁盘的开始,28-2B为磁盘的大小
那么我们就得到的分区一的MBR引导

1c为2048

28为6,143,999
我们使用记事本记录下来

寻找第二个分区

我们并不知道哦分区二的开始在哪里
分区一的开始 + 分区一的大小 = 分区一的结束,这个是肯定的,我们加上去看一看

6,146,047扇区,我们跳转到这个扇区去看一看,跳转分区快捷键ctrl + g
跳转到这个分区会发现这个扇区的1C282048扇区_分区一的开始扇区的内容还是一模一样的,这个我们称为dbr1备份,分区一的备份

我们手动滚到下一个扇区,6146048扇区

观察1C的值为6,146,048和当前磁盘一样,我们磁盘字节1C为磁盘的开始,所以我们当前的扇区就是dbr2的开始
观察28的值为7,167,999.

我们将这两个值记录下来

由此我们可以得到一个结论:
1C + 28 + 1 = 下一个分区的开始
1C + 28 = 分区的备份
分区一的开始 + 分区一的大小 + 1 = 分区二的开始
加一是因为刚刚我们手动滚了一个分区

寻找三个分区

根据我们刚刚的方法,那么第三个分区的开始就是分区二的开始 + 分区二的大小 + 1 = 分区三个开始

通过计算得出,分区三的开始为13,314,048,跳转到该扇区

1C值为13,314,048和当前扇区一样,确实就是第三个分区的开始
28值为3,071,999,记录下来

现在我们得到了三个分区的开始和结束,只需要在MBR分区表填写即可恢复我们的分区

回到0扇区 MBR填写分区表


填写后保存,在磁盘管理里查看

成功将我们的分区恢复

posted @ 2022-03-19 08:01  Junglezt  阅读(1071)  评论(0编辑  收藏  举报