数据恢复

  1. 云栖社区>
  2. 博客>
  3. 正文

数据恢复

像教授 2017-11-26 21:21:00 浏览497
展开阅读全文

实验情况: 原来磁盘的容量为 20 G ,并有四个分区
H: 主磁盘分区 NTFS 6G 左右
I: 逻辑分区 FAT32 3G左右
J:逻辑分区 FAT32 8G左右
K:逻辑分区 NTFS 4G左右
将四个 分区 全部删除后,并从新建立一个新的分区,占整个磁盘!
实验目的:将磁盘中的数据全部恢复!
实验方案: 因为磁盘中有四个分区 所以 可以有两种恢复方式,:
1. 把四个分区全部恢复为四个主分区
2. 原样恢复

下面我按照原样恢复硬盘分区!
一. 算出 各个分区的起始和 结束位置!
对有故障的磁盘有大致的了解后,我们利用 winhex 打开这个磁盘 如图:


在分区表中只定义了一个分区,重建分区表之前我们必须先知道 各个分区的起始和结束位置,这样才好定义分区表
我们很容易知道 H 的分区之前的扇区数 是 3F 00 00 00 (十进制是63),由于分区之间没有冗余,得知扩展分区的起始扇区后,H 分区我们可以定义出来。
H 大约所占用的柱面为 6*1024/7.84=783 (每个柱面约为 7.84M),所以扩展分区在783柱 附近
转到 760柱(以防漏掉扩展分区 的起始扇区)
然后我们利用扩展分区的起始扇区 以 55AA 结尾 这个特点 进行搜索:如图:


如图:


在 764/254/63柱winhex停止查找,不出错的话 下一个扇区应该是扩展分区的起始扇区 (765/0/1)
如图我们已经找到 扩展分区的起始扇区 (开始扇区是12289725)


但是分区表中 却是空的,应该是 重新分为一个区的时候 ,已经把 该处覆盖
不过没有关系,我们可以根据 I 的 DBR记录 得出 I 起始和结束位置
为了方便 我们只用 LBA 表示扇区
I 的开始位置是 12289725+63=12289788 
转到 I的起始扇区 如图:


20H 表示 I 的扇区大小 I 的结束位置是 18442619
所以 第二个扩展分区的开始位置是 18442620
转到该扇区 查看一下


我们可以很高兴的看见 第二个扩展分区的 分区表中 已经定义 了 J 和 第三个 扩展分区
这两项,其实到这个时候我们只需要 把前面的分区表 补充完整后,就大功告成,但是还是缺少 第一个扩展分区的结束位置,我们还要继续下去!
经过计算后 我们转到第三个扩展分区的起始扇区 (计算过程和上面大致相同)如图:


此处定义的是 K 这个扇区,以后没有在定义扩展分区,到结尾啦!
最后 我们可以算出 K 的结束位置是 41929649 扇区 ,所以 第一个扩展分区的结束位置也是 41929649
下面我们详细列出 各个分区的开始和结束位置
H 63 – 12289724 07
EBR1 12289725 – 41929649 0F
I 12289788 – 18442619 0B
EBR2 18442620 – 34828919 0F
J 18442683 – 34828919 0B
EBR3 34828920 – 41929649 0F
K 34828983 – 41929649 07
现在已经 完成一半的工程,接下来 我们要在 分区表中写入数据!
二 向分区表中写入数据!
转到 0 号扇区


定义 H 分区 和 第一个扩展分区,
接下来 转到第一个 扩展分区的起始 扇区


定义 I 分区 和 第二个扩展分区
接下来 转到第二个扇区 的起始扇区 如图:


定义 J 分区 和 第三个 扩展分区

转到 第三个扩展分区的起始扇区


还保留原来 的 分区表记录,k 分区 根本不用再去 定义!
在定义的过程中,我全部省略了 对 CHS 的描述,其实 LBA 的优先级比 CHS 的优先级高,在说 CHS 的表示能力有限,所以 我们完全可以不去定义 CHS 的部分!
至此 分区表 已经全部 重建完毕! 但是 还有一点 我们要注意,第一个分区 H 分区的 DBR 记录已经 不存在 (从 刚开始第一个 扩展分区的起始扇区 没有 定义分区表 我们 应该意识到还是少 一部分内容)
三 : 添加 DBR 记录

到这里我们有两种方式可以来添加
第一种:省去 公式的麻烦,我们只需要找到 一个 与 H 分区一摸一样的分区,复制一下H 的同胞兄弟的 DBR ,就可以啦,
我们新添加一块硬盘 ,与 “故障”盘一摸一样


下面我们选择 新建一块硬盘,


对 驱动程序 和 容量 定义完成后,从新启动机器,对新的硬盘分出一个和H 分区一摸一样的分区,可以 直接将 0 扇区的分区表中 定义 H 的那一项 复制到 新的硬盘中,重新启动机器 ,在将新的硬盘 格式化 ,就能够产生我们想要的 DBR 记录!
如图:


已经粘贴好 分区表中定义项
加入我们找不到一模一样的分区怎么办??下面第二种方法就是一个很好的选择!
第二种方法:根据NTFS 分区文件系统格式,我们可以很轻松的解决,
NTFS 格式的分区.第一个扇区和最后一个扇区是两个相同的DBR记录,我们完全可以用最后那一个备份的DBR记录来填充到第一个扇区!!

重新启动机器后 ,将 新的分区 格式化 !
剩下的工作就是 复制 DBR 记录喽!

四. 验证 实验效果
给 已经复苏的四个分区 ,分配驱动号

查看里面的数据 是否完好无损:


分别查看后,数据已经全部恢复!我们可以休息一下啦!
 






本文转自 位鹏飞 51CTO博客,原文链接:http://blog.51cto.com/weipengfei/342284,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论
像教授
+ 关注