分区恢复和NTFS文件恢复试验
一、实验室名称:主楼实验室A2-412
二、实验项目名称:分区恢复和NTFS文件恢复试验
三、实验学时:6学时
四、实验原理:
借助fdisk、diskgen软件对磁盘分区进行删除和恢复,使用工具软件WINHEX对指定的文件进行定位、分析,以及恢复。
五、实验目的:
1)掌握使用软件进行磁盘的分区恢复技术
2)了解NTFS文件系统在磁盘上的存储映像和它在系统安全中的地位和作用。
3)初步掌握NTFS的文件恢复技术
六、实验内容:
n 磁盘分区恢复实验
1)在VMware上安装Windows XP。
2)使用启动盘中的fdisk破坏(删除)磁盘分区。
3)使用启动盘中的DiskGen恢复磁盘分区。
n NTFS的文件恢复实验
1)在Windows XP的NTFS格式的磁盘中,创建一个简单文件,使用WINHEX进行分析。
2)使用WinHex软件进行文件恢复操作练习。
七、实验器材(设备、元器件):
PC微机一台(至少具有一个FAT格式磁盘分区),VMware Workstation6.0虚拟机软件,Windows XP for VMWare映像安装文件,Fdisk,DiskGen,WinRAR,WinHex软件。
八、实验步骤:
步骤一、在虚拟机上安装Windows XP和工具软件。
1.创建虚拟机,虚拟磁盘空间不少于4GB,并具有光盘驱动器和软盘驱动器。
2.使用提供的Windows XP ISO映像安装盘(TOMATO_WINXP_SP2.iso),在虚拟机上安装Windows XP。
3.依据安装提示,设置磁盘分区。分3个区,均采用NTFS格式(其中安装Windows XP的分区大小为2.5GB,其他两个分区大小自定)。
4.记录分区大小。
5.Windows XP安装完成后,采用快速格式化方式将其他逻辑磁盘格式化为NTFS磁盘。
6.安装实验所需工具软件WinRAR和WinHex。
ü 安装WinRAR压缩工具软件:使用Windows XP安装盘,在菜单中选择TOOLS目录,运行该目录下的WinRAR安装文件,在虚拟机上安装WinRAR。
ü 安装WinHex:将WinHex软盘映像文件(WinHex.IMA)拷贝到虚拟机中,使用WinRAR解压缩,安装后即可使用WinHex。
7.安装完毕后使用VMware快照和克隆功能,备份试验系统。
步骤二、使用Fdisk删除分区
1.使用启动盘(Start.flp)启动备份虚拟机系统。
2.使用Fdisk删除硬盘的分区:在Fdisk中选择删除Non-Dos分区菜单,将安装Windows XP系统的磁盘分区删除。
3.查看是否能够启动Windows XP。
步骤三、使用DiskGen恢复分区,恢复系统
1.使用启动盘(Start.flp)引导备份虚拟机系统.。
2.运行ctmouse命令,启用鼠标支持。
3.运行DiskGen软件。
4.重建分区。
5.设定活动分区。
6.重新运行,检查Windows XP能否正常启动。
步骤四、查找文件
1.在一个NTFS格式的磁盘中,创建一个目录,并在该目录中创建一个大于1KB的文本文件(*.txt文件),使用WinHex查找相关MTF文件项。
2.根据MFT文件项信息,获取文件的运行或数据存储位置。
3.使用WinHex读取该文件对应的扇区,查看扇区存储的文件内容。
步骤五、文件删除原理
1.删除生成的目录和文本文件。
2.使用WinHex,查看MFT,对比已删除文件在MFT中所对应的状态信息的变化。
步骤六、文件恢复
1.在NTFS格式的磁盘中,使用WINHEX进行文件恢复操作练习。
2.记录所使用的主要磁盘参数。
3.简叙恢复操作的主要步骤。
九、实验数据及结果分析:
任务一:使用Fdisk删除分区
1.安装Windows XP系统,安装时,将磁盘分为三个NTFS分区。

2.使用快照和克隆功能备份安装的Windows XP系统。

3.退出Windows XP后,使用启动盘引导系统,使用fdisk删除分区,记录(拷贝屏幕输出)删除分区的步骤,并对其进行说明。








4.验证Windws XP能否启动。

这里把软盘的启动连接去掉,启动系统。

Fdisk删除磁盘分区后,xp无法启动。
任务二:使用DiskGen恢复分区,恢复系统
1.记录(拷贝屏幕输出)分区信息。
2.记录DiskGen恢复分区的步骤。

Ctmouse:鼠标支持。


这里点击备份分区表,图中会出现空行,以方便新建分区,并不备份。






这里尤为重要,千万不能删除引导目录,这是原有的dbr。

4.进入Windows XP,确认分区是否被恢复。

Xp启动成功。
任务三:查找NTFS文件
1、创建一个“123”目录,并在该目录下,创建一个”txt”文本文件(文件大小>1KB)

2、使用WinHex查找目录和文件在MFT的相关目录项,记录并做分析。

下面是磁盘分区的dbr。


由0x0d得到每簇扇区数为4,由0x30得到$MFT的起始簇号为2ad0b,故起始扇区号为4*2ad0b=701484(十进制)。

下面可以看到123.txt的文件记录,可以右键选择看文件内容或文件记录。



可以看到该文件有3个属性记录,30属性里可以看到文件名,80属性里可以看到非常驻,文件大小,runlist等。看文件内容可以通过winhex提供的功能,也可以在0x1569796A~0x1569796c获得数据开始簇号为2ad09,结合一簇4扇区求得文件位置。
3、删除文件和目录,使用WinHex查找目录和文件在MFT的相关目录项,记录并做分析。



用shift+delete快捷键彻底删除123.txt后,查看对应mft记录,对比之前记录,可发现,唯一变化的地方只有0x15697816-0x15697817由1改为0,此处表文件状态。
任务四:恢复文件
记录并说明对目录和文本文件进行恢复过程,并对MFT相关项进行分析。
1.使用WinHex查找文件项,使用recover进行文件恢复。
2.使用WinHex查找修复的目录和文件在MFT的相关目录项,记录并做分析。


我的做法是,利用winhex,查找123.txt的mft记录,进而由起始簇进入文件内容处,选中并复制粘贴到一个新建文件里,记为noname.txt,显然,与原文件内容相同,恢复成功。
十、实验结论:
Ntfs与fat差别很大,里面所有东西全以文件的形式存在,mft文件记录尤为重要,通过mft可以定位每一个文件。
十一、总结及心得体会:
通过本实验,知道了fdisk跟diskgen的用法,了解了ntfs的文件存储原理,果然跟fat差别很大。自己对B+树学之不深,仍待提高。亲自定位文件,方知ntfs的复杂,不过这样的文件系统,打破了fat的很多局限,还有efs等结构,收获匪浅。
十二、对本实验过程及方法、手段的改进建议:
多些b+树方面的实验内容还是很好的。
分区恢复和NTFS文件恢复试验的更多相关文章
- linux下rm -r误删NTFS文件恢复方法
一时疏忽,手一抖,把整个挂载的F盘删了一半!顿时傻眼!! 被删的F盘是Windows下NTFS分区,在Ubuntu12.04中挂载了F盘,使用rm命令时粗心大意,误删了一半的数据. 血的教训告诉我们, ...
- (Les16 执行数据库恢复)-重做日志文件恢复
丢失重做日志文件 丢失了重做日志文件组中的某个成员,并且组中至少还有一个成员: -不会影响实例的正常操作. -预警日志中会收到一条信息, ...
- NTFS文件系统结构及文件恢复
结构部分参考了 https://www.cnblogs.com/mwwf-blogs/archive/2015/05/04/4467687.html 以及P老师的课件. 文件恢复参考: https: ...
- linux extundelete 删除文件恢复
extundelete是基于Linux的一个数据恢复工具,它通过分析文件系统的日志,解析出所有文件的inode信息,从而可以恢复Linux下主流的ext3,ext4文件系统下被误删除的文件. [问题案 ...
- TestDisk 数据恢复 重建分区表恢复文件-恢复diskpart clean
source:http://www.cgsecurity.org/wiki/TestDisk_CN TestDisk 是一款开源软件,受GNU General Public License (GPL ...
- linux下恢复误删除的文件方法(ext2及ext3)
linux下恢复误删除的文件方法(ext2及ext3) 2009-12-19 15:23:47 分类: LINUX 如果是ext2文件系统的,直接用debugfs是可以恢复出来的,但对于ext3,d ...
- 云服务器 ECS Linux 误删除文件恢复方法介绍
云服务器 ECS Linux 下,rm -rf 意味着一旦删除的文件是无法挽回的.但如果在没有文件覆盖操作的前提下,可以先尝试相关方式进行文件恢复. 本文对此进行简要说明. https://help ...
- MySQL表结构为InnoDB类型从ibd文件恢复数据
客户的机器系统异常关机,重启后mysql数据库不能正常启动,重装系统后发现数据库文件损坏,悲催的是客户数据库没有进行及时备份,只能想办法从数据库文件当中恢复,查找资料,试验各种方法,确认下面步骤可行: ...
- 【转】文件恢复神器extundelete
参考博文: 1.Linux中VMware虚拟机增加磁盘空间的扩容操作 http://www.net130.com/CMS/Pub/special/special_virtual/special_vir ...
随机推荐
- SpringInAction--SpringMvc高级技术(servlet、filter、multipart)
前面学了spirng的一些配置,以及web方面的知识,今天就在学习一下在spring比较常用的一些高级技术... 首先来介绍下什么叫servlet吧(来着维基百科) Servlet(Server Ap ...
- ReactNative 问题集合
在线流畅播放视频 (建议调用原生的视频组件, 或者在成熟的安卓 ios组件封装一层) 如何指定页面横屏 (在这个组件react-native-orientation基础上改写) webSocket不和 ...
- Ubuntu文本编辑(vi和nano)命令
vi是Unix世界里极为普遍的全萤幕文书编辑器,几乎可以说任何一台Unix机器都会提供这套软体就像windows的记事本一样. 键入 vi /etc/hosts 进入vi界面,把光标移动到文件未尾.按 ...
- axios请求requestBody和formData
前言 在vue的后台管理开发中,应需求,需要对信息做一个校验,需要将参数传递两份过去,一份防止在body中,一份防止在formdata中,axios请求会默认将参数放在formdata中进行发送. 对 ...
- Redis3.0集群
Redis集群介绍 Redis 集群是一个提供在多个Redis间节点间共享数据的程序集. Redis集群并不支持处理多个keys的命令,因为这需要在不同的节点间移动数据,从而达不到像Redis那样的性 ...
- ElasticSearch(一):windows下安装ElasticSearch6.3.2
前言 最近开始学习ElasticSearch,从官网上下载的最新版的es,但是网上安装教程大部分是早期5.X版本的,因为6.x版本出现了不同,所以记录下. 正文 1. 下载ElasticSearch ...
- spring-security-4 (4)spring security 认证和授权原理
在上一节我们讨论了spring security过滤器的创建和注册原理.请记住springSecurityFilterChain(类型为FilterChainProxy)是实际起作用的过滤器链,Del ...
- 6-1 Deque(25 分)Data Structures and Algorithms (English)
A "deque" is a data structure consisting of a list of items, on which the following operat ...
- Mac OS Alfred 2 tips
From: http://www.uuair.cn/?p=64 写这个东西,我没敢叫指南之类,只能算是技巧,因为Alfred这个软件的强大,我还没研究明白,还有好多功能自己没搞懂,所以写一些我发现或者 ...
- streamsets 包管理
streamsets 自带一个包管理,可以方便的进行三方组件的添加,比如我们需要处理mongodb 数据,默认是没有添加这个组件的,操作如下: 选择包管理 选择组件 安装 点击安装 提示界面 安装完成 ...