1、案例
小王电脑最近有点问题,于是打算将电脑系统重装系统,原本5个分区,第一个区是操作系统区,后4个用户数据区,在一次GHOST时失误,做完发现硬盘只有一个系统区,两个数据区消失了,其分区结构如下图。
我们从上图看到,现在原本5个分区的磁盘由于重装系统导致变成一个磁盘,小王看到这样的结局无从下手。
对于学习数据恢复的小伙伴来说这其实是一个很好解决的问题,我们知道分区原本有5个,第一个是我们的活动分区也就是C盘,进行GOHST时只将第一个分区的数据改写,而实际上原本的第一个分区之后所有分区还是存在的,只是因为分区表的改变使那些分区无法显示而已,如果能把分区表恢复为原本的状态,就能够把丢失的分区找回来。
2、恢复思路及方法
我们上面说过,在磁盘进行误克隆时,其实只是将分区的第一个分区进行了改写,后面并没有,我们完整的分区如下图图所示。
在正常的MBR里面应该有两条数据,一条是C盘的分区表,另一条是扩展分区的分区表,我们从EBR开始位置就是扩展分区,我们只需要在winhex里面讲,开始位置,与大小填写到MBR中即可。我们首先看损坏的MBR是什么样子?
我们从上图可以看到损坏的MBR只有一条分区表记录,类型是“07”NTFS,位置是2048开始,大小:1048576000。我们看到大小占据了整个分区的大小,明显是错误了。
我们先要用winhex找到以前EBR1的位置,“”=查找十六进制数值”
我们可能从搜索时发现很慢,因为按照扇区搜索,且干扰信息非常大。因为有很多扇区最后两个字节刚好是“55 AA”,而这些扇区又不是我们要找的扇区。
经过耐心的搜索后,我们在磁盘中找到了原本的第一个EBR1,如下图所示。
EBR1的位置位于209719296,
接下来我们跳转到0号扇区,将0号扇区的第二条分区表项进行填写,首先我们填写类型的时候,要填写“05”因为这是是一个扩展分区,它的起始位置209719296。那它的大小应该怎么算呢,
首先我们将总扇区的大小(1048576000)-EBR1的位置(209719296)=扩展分区的大小(838,856,704)
现在我们将这些算出来的值进行填写到我们MBR中,如下图所示。
填写完毕后我们发现不对,因为第一条分区表项纪录没有更改,它的大小是总扇区大小,所以我们要将分区大小进行更改,怎么计算呢?
我们用第二天分区表项的起始位置(EBR1)-2048=第一个分区表的大小。(这个之前我们在前面课程中已经讲解过这里就不再进行重复)。
我们将更改完后我分区表进行保存。
更改完后我们看下磁盘管理中我们的分区是否正常。
以上是我们手工进行填写的分区表,我们还有一种比较快捷的方式,就是使用winehx里面的扫描丢失的分区功能。
我们可以选择不同分区的类型,如下图所示
我们点击确认后;软件会自动搜索以前存在的分区将丢失的分区进行找回,但是找回后还是需要手动填写分区表里面的类容。