tclcm056 发表于 2008-9-30 12:44:12

FAT32下文件删除的恢复思路与方法

FAT32下文件删除的恢复思路与方法

因为FAT32的文件系统是由三部分进行管理文件的
文件目录项    FAT表      数据区

一 首先了解FAT32分区下文件删除会对硬盘底层做了哪些操作.

1、文件目录项的首字节被改成E5,该文件的起始簇号的高位簇号被清零(本文只对高位簇号没有被清零或高位簇号原来就是零的进行讲解)

2、FAT 对应的簇链被清零

3、数据区没有发生改变

下面我们来看一下WINHEX截取的图片。我用VDISK虚拟了一个磁盘。里面装了一首MP3歌曲。现在就来看一下没有删除以前的那个MP3歌曲在文件系统中是什么样的。文件名是   10 朋友别哭.mp3

未删除文件以前的目录项   


FAT表
一部分


未删除以前的数据区    一部分



下面我们再来看一下删除文件后发生的改变

文件目录项:首字节被改成了E5


FAT 表   已经被清零



数据区无变化



这就是删除以前和删除后的变化。不知道大家看懂了没有。下面我们就来恢复这个MP3歌曲。

恢复思路:找到该文件的起始簇号。然后算出该文件占用的扇区数。这样就能导出该文件

1、转到该文件目录项



我们知道,FAT32的起始簇号 是两个部分组成 一是从34H-35H偏移二是3A-3B偏移,
34H-35H 为 00 00
此簇号为00 00。只是因为原来簇号就是00 00 我们删除文件以后高位被清零。所以我们看不出来改变了。因为我们按照高位在前,低位在后的原则
所以该文件的起始簇号为 00 00 00 03H
起始簇号为3号簇

下面我们算一下该文件的大小。在目录项的3C-3FH偏移是文件的大小,它的单位是字节
94 7F B0 00 H
等于11597716字节大家都知道一个扇区是512字节那么11597716 /512= 22651.7890625
四舍五入=22652扇区该文件就占用了这么多扇区。

好了,既然起始簇号和占用扇区数已经算出来了,我们就开始恢复文件吧。
先跳转到3号簇



3号簇对应的是1264号扇区   也就是该文件的起始扇区

那么该文件的结束扇区就应该是(起始扇区+此文件占用的扇区数)也就是1264+22652=23916号扇区

首先在1264号扇区的首字节点选块开始



然后在23916的最后一个字节点选块结束



然后在任意所选的扇区上点右键---编辑-----复制选块-----置入新文件

默认的名子是NONAME .在任意位置点保存。文件的扩展名默认是DAT
然后把此文件夹扩展名改为MP3就可以了。

此文件恢复成功

本人是第一次做教程,难免有不足之处,希望各位网友谅解.如果此贴有不足之处,希望各位网友与我联系

zjl6634 发表于 2008-9-30 12:54:48

学习了,谢谢楼主,希望多出教程,惠及我们菜鸟.

yjlbcjk 发表于 2008-9-30 13:14:05

好文章!!!
LZ辛苦了,这种方法在《数据恢复方法与案例分析》中有提到

感觉自己见到多的是非连续的文件,LZ这方法适合连续的,期待什么时候发个非连续的恢复思路

[ 本帖最后由 yjlbcjk 于 2008-9-30 16:13 编辑 ]

可儿工程师 发表于 2008-9-30 14:08:16

谢谢楼主,很准确的恢复。

有个问题,一般来说,这种删除,在上边的目录里,是可以看到的。我们在文件名处点右键,直接复制为新文件似乎就可以了。被打上E5标志的文件,只是文件名开头会有一点识别不了的地方。

tclcm056 发表于 2008-9-30 15:38:52

是这样的,我主要是告诉大家恢复的过程

小程子 发表于 2008-9-30 15:45:06

对于容量较小的文件来说这种方法似乎很行的通,但是对于容量较大的文件就不太好说了,因为系统不可能总是用连续的簇来存储文件。对于FAT簇链的使用,系统是随机性的。

nhqwsj 发表于 2008-9-30 16:08:10

在实际的磁盘中,不是这么能容易恢复的

可儿工程师 发表于 2008-9-30 20:44:32

如果高位被抹了,又不在具体的文件夹里,或同文件夹没有别的文件,就不大好找了哦~

可儿工程师 发表于 2008-9-30 20:45:39

我的一台电脑就是这样的,每次删东西,高位都会被抹。根本无法指对正确的簇号。

changfeng1229 发表于 2008-10-2 19:36:12

呵呵,谢谢楼主,上次忽略了一个小问题,结果是怎么都不能解决,现在终于搞定了,谢谢
页: [1] 2 3 4 5
查看完整版本: FAT32下文件删除的恢复思路与方法