对于数据恢复来说,虽然文件删除后所有的数据运行都能够在残留的
MFT
中找到,但是数据运行的个数越少即文件碎片越少或者没有碎片,文件被覆盖的可能性就越小,数据恢复的概率也就越高。以下是手工恢复
NTFS
卷中误删除文件的过程。
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
1.
需要恢复的文件
NTFS
卷中一个文件被删除时,其
MFT
并没有被删除,前面已经介绍过,这里以恢复一个
NTFS
卷中一删除的文件为例,假设在用户的
NTFS
卷
D
盘中有一个名为
photo
的目录,该目录下有一个名为
“penquan.jpg”
的文件,如图
5-1
所示。假设用户不小心将此文件删除。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
![](https://i-blog.csdnimg.cn/blog_migrate/0de07a83408623f5e305c4dbbd88912b.jpeg)
图
5-1 NTFS
卷中将被删除的文件
2.
找到要恢复文件的
MFT
首先通过
WinHex
选择文件所在的逻辑磁盘将其打开,如图
5-2
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/4488fc507c66293dcaba5e1794d4723c.jpeg)
图
5-2
选择磁盘分区
打开磁盘的分区后找到该分区的
MFT
,如图
5-3
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/d19372890231afed6a43a969148a15ba.jpeg)
图
5-3
转到
MFT
的起始位置
3.
恢复数据
找到分区的
$MFT
后,通过文件名查找文件的
MFT
,如图
5-4
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/26557478f8c74e6b871f005fb867c17f.jpeg)
图
5-4
查找文件的
MFT
查找到的结果如图
5-5
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/bf677df07cf1e0f9c8d3c3ac8c40feae.jpeg)
图
5-5
已删除文件的
MFT
先来看看
MFT
头,偏移
15.16H
为
0
表示该文件已经被删除了,系统根据这个标志来决定建立新文件时是否能够覆盖这个
MFT
而创建自己的
MFT
。
10H
属性就不分析了,除非希望恢复的文件所有的时间属性和以前一样,用户对此要求一般没有那么高,所以跳过
10H
属性不分析。
30H
属性这里也不分析。关键是要分析
80H
属性,即数据属性,在该属性所有的描述中,对恢复数据最有用的信息有两个,一个是偏移<?xml:namespace prefix = st1 ns = "urn:schemas-microsoft-com:office:smarttags" />
00C
12DD160H
开始的
8
个字节的属性是该文件的实际大小
506E
,单位是字节。还有一个地方是偏移
00C
12DD170H
开始的数据运行位置描述,这里为十六进制数
41H 06H 83H 0BH 90H 00H
。其中
41H
定义了其后面有
1
个字节表示该文件的数据运行所占的簇的个数,
4
个字节表示该数据运行的起始逻辑簇号,这里定义了其运行占用了
06
个簇,其起始逻辑簇号为
900B83H
。知道了起始簇号和数据运行的真实大小,甚至知道运行所占的簇的个数,要恢复文件数据就很容易了。
在
WinHex
中选择
“
位置
”|“
转换到扇区
”
命令,打开对话框,在
“
簇
”
文本框中输入
9440131
(
900B83H
转换后的十进制数),然后单击确定,即可找到数据的起始位置,其中
FFH DBH
是
.jpg
照片的文件头标志。在找到的数据起始位置右击,选择
“
选块开始
”
命令。如图
5-6
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/d70ad220ccb132f6817ec836857a6bc1.jpeg)
图
5-6
文件的起始位置
继续在
WinHex
中选择
“
位置
”|“
转换偏移量
”
命令,打开
“
转到偏移量
”
对话框输入
20590
(
506EH
转换成十进制数)如图
5-7
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/db9b8eb8fbf9b5b63dd4c436a46d56e9.jpeg)
图
5-7
转换偏移量
单击确定后会跳到文件的结尾位置,单击右键选择
“
选块结尾
”
命令,如图
5-8
所示,即可完全的选择到用户要恢复的文件数据。
![](https://i-blog.csdnimg.cn/blog_migrate/ea8c83994999bf0371694799ace8a383.jpeg)
图
5-8
找到文件的结束位置
选中所有要恢复的数据内容后,在选中的任意块上右击,选择
“
编辑
”|“
复制选块
”|“
进入新文件
”
命令如图
5-9
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/95df02285cf90a19479b425a1e0b9873.jpeg)
图
5-9
复制所有数据
然后将文件命名并保存到指定的路径,如图
5-10
所示。
![](https://i-blog.csdnimg.cn/blog_migrate/14a8467c9f676b9694fff1b6fe6f14b9.jpeg)
图
5-10
保存文件
保存成功后,关闭
WinHex
,按照刚才保存的路径打开文件,数据恢复成功,图
5-11
是恢复后的文件。
![](https://i-blog.csdnimg.cn/blog_migrate/73c740dd986751507504e57815d35884.jpeg)
图
5-11
文件恢复成功
转载于:https://blog.51cto.com/508239/158308