今天做了个误删除分区的实验,感觉还是挺实用的,所以就写出来跟大家一起分享一下了,写的不好还请高手多多指教啊 哈哈  

    好了,客套话就先说到这了,呵呵……接下就进入正题吧!
    我们的实验环境是这样的把一个9.76G硬盘的分区全部删掉,不知道里面分了多少个分区,我们的环境是我们仅仅知道硬盘有多大,其他的一无所知了。
    呵呵……挺狠的吧!
    对于数据恢复我一般都是用winhex这个工具的,这个工具给我的感觉还是不错的。
    接下我们就开始恢复了:
    第一步:我们知道误删除分区,其实就把分区表里的内容删掉了,数据区的内容一点都没有动,在每个分区开始的第一个扇区我们知道它不是个分区表就是个主引导记录,如果是个分区表的话就说明这个分区是拓展分区,如果是主引导记录的话那就要看20偏移和28偏移了,如果在20偏移就说明是个FAT分区;如果在28偏移的话就是NTFS分区。呵呵 那就看看吧硬盘误删除分区恢复 _硬盘
            
     我们来到0扇区可以看到分区表已经清空了,接下来我去63号扇区看看,硬盘误删除分区恢复 _硬盘_02
    我可以看到这明显不是分区表,那就是引导记录了,我们去看一下这个扇区的20偏移、
硬盘误删除分区恢复 _误删除_03 

我们可以看到在20偏移位置有数据,这就说明这就是个fat分区,但是到底是fat16还是fat32呢,我们可以看一下65扇区的前几个字节有没有数据,因为如果是fat16的话,那么系统会保留2个扇区给dbr,好我们就看一下65扇区

硬盘误删除分区恢复 _休闲_04
我们可以看到65扇区是空的数据,那我们在来看看101号扇区,因为fat32是给dbr保留38个扇区,好我们来到101扇区看看
硬盘误删除分区恢复 _职场_05
 呵呵,看到系统给保留的两个簇就知道这是fat32系统了,既然我们知道第一个分区是什么系统、又知道它的起点是63扇区、大小也知道了,那我们就来填分区表了
硬盘误删除分区恢复 _分区恢复 _06
第一个分区我们已经知道了,接下来我们就看看第二个分区是什么,好了我们到第二分区的起始扇区看看,第二个起始扇区开始是第一个扇区的启示加大小减一硬盘误删除分区恢复 _分区恢复 _07
我们看到在28偏移的位置有数据,这是说第二个分区是ntfs主分区,那么既然是知道第二个分区开始和大小了 ,那就写喽
硬盘误删除分区恢复 _硬盘_08
以此类推我们去看一下分区的起始扇区了
硬盘误删除分区恢复 _分区恢复 _09
我们可以看到这是个分区表但是已经被清空了,我们就来恢复一下了,我们来到这个分区的引导扇区看看其实用访问就很简单的可以找到了硬盘误删除分区恢复 _硬盘_10
这里告诉了这个分区的大小
好了我们在来用访问看看最后一个扇区
硬盘误删除分区恢复 _硬盘_11
我们知道每个逻辑分区之前都有一个分区表
我们看看最后一个分区的分区表
 
硬盘误删除分区恢复 _休闲_12
 
我们这里看到在分区表里只有一条记录,这说明这就是最后一个分区了
 好我们来填写一个分区的分区表,分区表里就有一项记录没写了。就是拓展分区
其实拓展分区的起始扇区我们知道了,就是它的大小我们还不知道。
大小这里我说一个简单算法就是 我们来到最后一个逻辑分区的引导扇区,这个扇区有这个逻辑分区的大小,然后加上这个分区的扇区号然后减一就是拓展分区的结束位置,然后用结束位置减去其实位置加一就是拓展分区的大小了。
我们先来到逻辑分区的引导扇区看看
 
硬盘误删除分区恢复 _分区恢复 _13
我们看到左下角的扇区号是14346108
然后看看大小
 
硬盘误删除分区恢复 _分区恢复 _14
把FD 64 5D 00 转换成十进制(注:大小是倒写的5D 64 FD )的然后加上14346108减去拓展分区的起始加一就是拓展分区的大小了
  好了接下来我们来填写分区表了
硬盘误删除分区恢复 _误删除_15
接下来我们来填写第二个分区表了
硬盘误删除分区恢复 _休闲_16 
好了 我们保存 重启就好了
 看看成果吧
  硬盘误删除分区恢复 _职场_17
ok 了 呵呵 恢复出来了

本文出自 “い天问々” 博客,请务必保留此出处http://luanchuang.blog.51cto.com/726437/202838