数据恢复技术分析NTFS分区结构
ntfs分区

ntfs分区NTFS 分区: 全面了解与管理NTFS(新技术文件系统)是一种广泛应用于 Windows 操作系统的文件系统。
它具有优异的性能、可靠性和可扩展性,因此被广泛用于电脑硬盘、外接存储设备以及其他 Windows 系统支持的存储介质。
本文将深入探讨 NTFS 分区的原理、功能以及管理方法,帮助读者充分了解和有效管理 NTFS 分区。
第一部分:NTFS 分区的基础知识几十年来,NTFS 一直是 Windows 系统的首选文件系统。
以下是一些关键的基础知识,有助于我们更好地理解 NTFS 分区。
1. NTFS 的历史和起源NTFS 文件系统最早是在 Windows NT 操作系统中引入的。
它被设计为取代较早的文件系统,如 FAT 和 FAT32。
由于 FAT32 的限制,包括单个文件大小不能超过 4GB,NTFS 迅速成为首选文件系统,并一直被使用至今。
2. NTFS 分区的优势NTFS 分区具有多种优势,使其成为理想的文件系统选择。
其中包括更好的安全性、更快的文件读写速度、对大容量存储的有效支持以及较低的碎片化程度。
NTFS 还支持许多高级功能,如文件加密、磁盘配额和压缩等。
3. NTFS 分区的结构NTFS 分区由多个组成部分组成。
其中包括 MBR(主引导记录)、分区表、引导扇区以及文件记录和文件表。
理解 NTFS 分区结构对于数据恢复和分区管理至关重要。
第二部分:NTFS 分区的管理管理 NTFS 分区涉及到多个方面,包括创建、格式化、调整大小、备份和恢复以及问题解决等。
以下是关于这些方面的详细介绍。
1. 创建 NTFS 分区在 Windows 操作系统中,我们可以使用磁盘管理工具来创建NTFS 分区。
通过这个工具,我们可以选择磁盘驱动器、分区大小以及分区的标签等。
2. 格式化 NTFS 分区对于新创建的分区或需要清空的分区,我们需要格式化为 NTFS 文件系统。
格式化将删除该分区上的所有数据,并准备它以存储新的数据。
NTFS文件系统结构分析

NTFS元文件 元文件
• • • • • • $MFT :中的第一个记录是$MFT自身。 $MFTMirr: 主文件表的部分镜像 $LogFile (日志文件),该文件是NTFS为实现可恢复性和安全性而设计。在系统失败时 能恢复NTFS卷。 $Volume(卷文件),它包含卷名、NTFS的版本和一个表明该磁盘是否损坏的标志位。 (NTFS系统以此决定是否需要调用Chkdsk程序来进行修复) $AttrDef:(属性定义表),其中存放着卷所支持的所有文件属性,并指出他们是否可以 被索引和恢复等。 $Root(跟目录),其中保存着该卷跟目录下的所有文件和目录的索引。
NTFS的元文件 的元文件
• NTFS系统中,文件按照簇进行分配,簇大小在格式化的时候由格式化 程序根据卷的大小自动进行分配。 • 文件通过主文件表MFT来确定文件在磁盘上的存储位置。主文件表是一 个对应的数据库,由一系列文件记录组成,卷中每个文件都有一个文件 记录。第一个文件记录称为基本文件记录,其中存储有其他扩展文件记 录的一些信息。文件表本身也有它自己的文件记录。 • MTF中的文件记录大小一般固定为1KB,文件记录在MFT文件记录数组 中物理上是连续的,从0开始编号。
• 1.容错性:NTFS可以自动地修复磁盘错误而不会显示出错信 息. • 2.安全性:NTFS有许多安全性能方面的选项,可以阻止没有授 权的用户访问文件. • 3.EFS提供对存储在NTFS分区的文件进行加密的功能 • 4.用户可以选择压缩单个文件整个文件夹. • 5.磁盘配额:就是管理员可以对本域中的每个用户所能使用 的磁盘空间进行定额限制,即每个用户只能使用最大定额范 围内的磁盘空间.
属性头
• 每个属性又分为属性头和属性内容两部分,属性头给出了该 属性的结构信息。 • 有的属性内容存储在记录项中(如文件名),称为常驻属性。 有的属性内容很大,需要在MFT外另外开辟空间存储(如 文件数据),则称为非常驻属性。 • 有的属性在属性头之后列出了属性名,而有的则没有。
ntfs的磁盘分区结构

ntfs的磁盘分区结构
NTFS的磁盘分区结构主要包含卷、簇、主控文件表(MFT)和文件引用号等组成部分。
卷建立在磁盘分区之上,分区是磁盘的基本组成部分,可以被格式化和单独使用。
NTFS使用簇作为磁盘空间分配和回收的基本单位,一
个文件占用若干个整簇,而最后一簇的剩余空间不再使用。
主控文件表(MFT)是NTFS卷结构的核心,每个文件在MFT中都有一行对应的文件
记录,包括文件的属性和属性值。
每个文件还有一个唯一的文件引用号,由文件号和文件顺序号组成。
在NTFS中,文件目录仅仅是文件名的一个索引,方便快速访问。
此外,NTFS还支持常驻属性和非常驻属性,当一个文件很
小时,其所有属性和属性值可存放在MFT的文件记录中,非常驻属性则需
要单独存储。
总体而言,NTFS的磁盘分区结构是一个高效、有序的文件管
理系统,能够支持大型文件和目录的管理,并提供了丰富的文件属性和安全控制机制。
NTFS分区的恢复技巧

NTFS分区的恢复技巧
NTFS分区结构大概如上图所示,NTFS的第一个扇区是DBR,最后一个扇区是DBR 的备份。
$MFTMirr通常在DBR向下16个扇区,$MFT通常在DBR向下6291456个扇区,实际的话还是要根据实际的分区去判断,不过我们要记住这些常见的偏移位置,可以提高数据恢复的效率,速度。
在数据恢复中,如果分区文件过多,我们建议修复好分区结构,然后去提取文件。
如果分区文件较少,并且我们只需要提取少数文件,我们可以直接手工定位文件提取文件。
NTFS手工定位文件的思路是先到DBR找到$MFT的偏移位置,如果文件较少,我们可以从$MFT向下跳转70个扇区,手动向下翻去我们要提取的用户文件,因为大多数$MFT向上70个扇区都是记录元文件和系统文件的,我们也可以直接用unicode编码去搜索文件名。
定位到文件记录直接通过文件记录的属性去提取文件。
如果DBR的bpb参数丢失,我们说几个bpb参数的恢复方法。
$MFT和$MFTMirr,可以先用上面说的常见参数判断$MFT和$MFTMirr的位置,如果不是常见参数的话,我们可以搜索文件记录的一些固定标识去寻找其位置。
簇大小的恢复方法有很多,说一个我喜欢用的方法,我先找到$MFT的起始扇区(比如是6291456扇区)然后在看$MFT的第一个文件记录的80属性去看一下$MFT的起始簇号(这里假设起始簇是786432),然后我们用6291456/786432=8,得出分区簇大小是8。
如果分区大小丢失的话,我们可以通过$bitmap的大小字节8簇大小。
NTFS恢复文件就是查二算一,查$MTF、查日志;算大小。
如果查二都没有找到文件的话,我们就算大小去找其他分区。
4。
详解NTFS文件系统

详解NTFS⽂件系统⼀、分析NTFS⽂件系统的结构当⽤户将硬盘的⼀个分区格式化为NTFS分区时,就建⽴了⼀个NTFS⽂件系统。
NTFS⽂件系统同FAT32⽂件系统⼀样,也是⽤“簇”为存储单位,⼀个⽂件总是占⽤⼀个或多个簇。
NTFS⽂件系统使⽤逻辑簇号(LCN)和虚拟簇号(VCN)对分区进⾏管理。
逻辑簇号:既对分区内的第⼀个簇到最后⼀个簇进⾏编号,NTFS使⽤逻辑簇号对簇进⾏定位。
虚拟簇号:既将⽂件所占⽤的簇从开头到尾进⾏编号的,虚拟簇号不要求在物理上是连续的。
NTFS⽂件系统⼀共由16个“元⽂件”构成,它们是在分区格式化时写⼊到硬盘的隐藏⽂件(以”$”开头),也是NTFS⽂件系统的系统信息。
NTFS的16个元⽂件介绍:⾸先找到该分区的起始扇区,具体可以参考这篇⽂章。
⼆、分析$Boot⽂件$Boot元⽂件由分区的第⼀个扇区(既DBR)和后⾯的15个扇区(既NTLDR区域)组成,其中DBR由“跳转指令”、“OEM代号”、“BPB”、“引导程序”和“结束标志”组成,这⾥和FAT32⽂件系统的DBR⼀样。
下图是⼀个NTFS⽂件系统完整的DBR。
下⾯我们分析⼀下DBR中的各参数EB 58 90:(跳转指令)本⾝占2字节它将程序执⾏流程跳转到引导程序处。
“EB 58 90″清楚地指明了OS引导代码的偏移位置。
jump 52H加上跳转指令所需的位移量,即开始于0×55。
4E 54 46 53 20 20 20 20:(OEM代号)这部分占8字节,其内容由创建该⽂件系统的OEM⼚商具体安排。
为“NTFS”。
BPB:NTFS⽂件系统的BPB从DBR的第12个字节开始,占⽤73字节,记录了有关该⽂件系统的重要信息,下表中的内容包含了“跳转指令”、“OEM代号”以及“BPB”的参数。
对照上⾯的BPB分析如下:02 00:每个扇区512个字节08:每个簇8个扇区00 00:保留扇区为000 00 00:为000:不使⽤F8:为硬盘00 00:为000 3F:每磁道63个扇区00 FF:每柱⾯255个磁头00 00 00 3F:隐藏扇区数(MBR到DBR)00 00 00 00:不使⽤80 00 80 00:不使⽤00 00 00 00 0C 80 33 FF:扇区总数20972851100 00 00 00 00 00 00 03:$MFT的开始簇号00 00 00 00 00 85 57 80:$MFTmirr的开始簇号00 00 00 F6:每个MFT记录的簇数00 00 00 01:每索引的簇数B8 11 2A 0C B8 11 2A 0C:分区的逻辑序列号引导程序:DBR的引导程序占⽤426字节,其负责完成将系统⽂件NTLDR装⼊,对于没有安装系统的分区是⽆效的。
NTFS 结构说明

NTFS 结构说明NTFS 结构说明关键字:Windows NT NTFS 文件系统MFT在Windows NT?中,Microsoft使用了一种新型的文件系统NTFS,它针对FAT/FAT32文件系统安全性差、容易产生碎片、难以恢复等缺点作了重大改进,使得系统总能保持较好的性能。
不过使用NTFS的分区只能被Windows NT?系统识别和操作,而且它的结构是Microsoft的内部机密,没有任何官方文档。
因此给各位需要在非Windows NT?环境读写NTFS分区的编程人员带来了巨大不便。
不过好在还有很多人在研究分析它,现在结合网上搞到的一些资料和我自己的分析对NTFS作一个说明(可惜还是有很多东西没能搞明白)。
一、概述在NTFS中一改FAT/FAT32中将文件分配表等系统数据放在分区最前面,然后接着才是数据区的做法,把所有的信息都组织起来以文件的形式存放,包括扇区分配表,引导记录等数据都是作为文件存在于磁盘中。
其中只有$Boot(分区引导记录)文件的位置是固定存放在分区首部,其他的文件都可以随意存在于分区中的任何一个位置。
这样使得对所有数据的读写都有一个较为统一的方法,而且使得改变分区的尺寸和碎片整理变得非常容易。
在NTFS分区中,存储分区信息的文件被称为系统文件。
在每个NTFS分区中都有十个这样的系统文件,它们分别是:$MFT$MFTMirr$LogFile$Volume$AttrDef. (分区根目录)$Bitmap$Boot$BadClus$Secure$UpCase$Extend下面分别对每个系统文件的作用及所保存的信息作一个说明:$MFT(Master File Table)文件。
这个文件是NTFS分区中最重要的文件,它记录了分区中所有文件(包括$MFT自身)的基本信息。
通过$MFT就可以访问分区中的所有文件和系统数据。
$MFT由多个MFT记录单元组成,每一个文件的描述占用一到多个(一个不够的情况下)$MFT记录单元。
数据恢复基础知识

数据恢复基础知识 DATA区分析
DATA
2号簇 3号簇 4号簇
……
根目录
子目录 或内容
子目录 或内容
……
N号簇
子目录 或内容
数据恢复基础知识
5 NTFS文件系统
数据恢复基础知识
16个元文件
$Mft
主文件表
$MftMirr 主文件表镜像
$LogFile
属性描述 标准信息 属性列表
文件名 对象ID 安全描述符
卷名 卷信息 文件数据
属性类型 90 00 00 00 A0 00 00 00 B0 00 00 00 C0 00 00 00 D0 00 00 00 E0 00 00 00 F0 00 00 00 00 10 00 00
属性描述 缩银根
索引分配 位图
子扩展分区
子扩展分区
M
主
E
B
分
B
R
区
R
扩展
E
扩展
磁盘
B
磁盘
分区
R
分区
2048
xxxxx
2048
xxxxx
2048
xxxxx
数据恢复基础知识
3 Windows系统的GPT磁盘分区
数据恢复基础知识 GPT是GUID Partition Table(全局唯一标识磁盘分区表)。 GPT是作为EFI(可扩展固件接口)计划的一部分引入的。
$Volume
$AttrDef
$Root
$Bitmap
$Boot 引导文件
$BadClus $Secure $UpCase $Extended metadata directory $Extend\$Reparse $Extend\$UsnJrnl $Extend\$Quota $Extend\$ObjId
NTFS的索引结构分析数据恢复迷

NTFS的索引结构分析数据恢复迷NTFS的一些新功能建立在一种叫作“综合索引”的基本功能之上。
综合索引中包含了具有某一特征类型的多个分类项,并使用一种高效的存储机制以便于快速查找。
在Windows 2000以前的NTFS版本中仅支持$I30的综合索引,索引中仅存储目录项。
索引过程将目录项按名称分类并将这些项按照B+树的结构保存,如图4-466所示。
图4-466 NTFS索引结构图4-466是一个包含3个节点,每个节点3个项,共9项的目录的MFT条目,其中索引根(Index Root)属性指向B+树的根。
这个MFT条目并不能容纳所有9个目录项,NTFS必须把其中一部分项存放在别处,因此,NTFS分配了两个索引缓冲区来存放另外的项(索引根以及索引缓冲区一般能够存储三个以上文件项,这依赖于文件名的长度)。
一个MFT条目占1KB的空间,而一个索引缓冲区占4KB的空间。
从图4-466中的箭头可以看出NTFS的存储项是按字母顺序进行的。
假设运行一个程序试图打开目录中的e.doc文件,NTFS会首先去读索引根属性,其中包含了d.pic、h.ppt及i.ddt三个文件项,并将名称“e.doc”与第一个项的名称“d.pic”进行比较,NTFS得出结论:e.doc在字母序上排在d.pic之后。
因此转而处理下一个项“h.ppt”,经过比较以后,由于e.doc的字母序在h.ppt之前,NTFS就会检索h.ppt项中索引缓冲区的虚拟簇号(VCN)。
这个索引缓冲区中存储着字母序比h.ppt小但比d.pic大的项。
VCN代表一个簇在一个文件或目录中的顺序,NTFS能够将虚拟簇号映射成逻辑簇号(LCN),而逻辑簇号表示着一个簇相对于一个卷的起始点的相对偏移量。
而如果h.ppt项中并不存在这个索引缓冲区的虚拟簇号,则NTFS可以立即断定这个目录中不存在e.doc文件,并报告打开文件失败。
当获得索引缓冲区的虚拟簇号以后,NTFS就会继续查找。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
三、引导扇区结构
NTFS的BPB
NTFS的DBR
三、引导扇区结构
偏移 00H 03H 0BH 0DH 15H 18H 1AH 1CH 24H 28H 30H 38H 40H 44H 48H 50H 长度 3B 8B 2B 1B 1B 2B 2B 4B 4B 8B 8B 8B 4B 4B 8B 4B 跳转指令(EBH 52H 90H),跳至54H处DBR部分 文件系统和版本的OEM标志(NTFS) 每扇区字节数(通常为200H) 每簇扇区数(值为2的N次方,通常为8) 介质描述,恒为F8 每磁道扇区数(通常为3FH,63) 磁头数(通常为FFH,255) 隐含扇区数(本分区前的扇区总数,也就是本分区的起始逻辑扇区号) NTFS未使用,总为80H 00H 80H 00H 扇区总数 $MFT的起始逻辑簇号 $MFTMirr的起始逻辑簇号 每MFT记录簇数 每索引簇数 分区的逻辑序列号,格式化的时候随机产生 校验和 描 述
请在自己的计算机(或虚拟机)上选择一个NTFS 分区,找到它的备份引导扇区位置,然后将其复 制到引导扇区位置。
四、修复引导扇区
演示使用备份的引导扇区实现对NTFS分区的引导 扇区的恢复。
1. 在NTFS分区中定位某个NTFS分区的备份引导扇区。 2. 修复引导扇区。 3. 检查修复工作区结构与特点。 2.MFT和元文件的概念。 3.使用备份扇区修复引导扇区。
作业
二、主控文件表与元文件
编号 0 1 2 3 4 5 6 7 8 9 10 元数据文件 $MFT $MFTMirr $LogFile $Volume $AttrDef $Root $Bitmap $Boot $BadClus $Secure $UpCase 主控文件表本身 主控文件表的部分备份(通常为前4项) 日志文件,实现了NTFS的可恢复性和安全性 卷文件,标识卷名,是否格式化,是否需要修复等信息 属性定义列表文件 根目录,存放目录和文件的索引,表示文件的逻辑层次关系 位图元文件,记录了卷中簇的分配情况 引导元文件,恒为0簇起始 坏簇列表元文件 安全元文件,存储访问控制表(在NTFS4及以前为磁盘配额信息) 大小写字符转换表元文件 功能或内容
一、NTFS分区结构
NTFS仍然使用簇来分配文件存储,簇又叫卷因子,在分区 中通常每个簇包含8个扇区,从0开始编号,这个簇号叫做 逻辑簇号(LCN)。 在存储文件的时候,NTFS采用了索引存储方式:即把文件 按照逻辑簇大小划分为多个区块,称为虚拟簇(VCN), 在主控文件表中有一张索引表,记录了VCN和LCN的对应关 系,因此可以快速地访问文件任意一个部分的内容,而且 簇到扇区的转换也非常简单。 VCN 1 2 3 4 5 6
11
12~15 16~23 24~?
$ExtMD
$Extended\
扩展元数据目录(Extended metadata directory)
扩展元数据,分别为重解析点、加密日志、配额管理、对象ID 为以后扩展而保留 用户文件和目录的记录编号
三、引导扇区结构
NTFS分区的0扇区是引导扇区,也叫DBR扇区,它 和后面的15个扇区(NTLDR区域)合起来构成BOOT 区域,也就是$Boot元文件。$Boot元文件恒定从0 簇起始,占16个扇区。 NTFS分区的引导扇区同FAT分区的引导扇区在结构 上非常相似,同样包含BPB,DBR和结束标志三个 部分,只是在BPB参数上有部分不同。由于所有的 结构信息都以元文件方式组织,因此在BPB中只包 含几个重要的参数。
LCN
101
102
106
107
108
221
一、NTFS分区结构
NTFS分区不再设管理控制区域,分区的0扇区便是 0簇,全部空间都是数据区域。分区中承担管理控 制信息的数据块被组织成文件,灵活地存放在任 意一个位置。只有BOOT区域比较特殊,由于0扇区 仍是引导扇区,因此BOOT区域始终位于分区前端。
分析NTFS分区结构
M6-1 本单元主要内容
一
NTFS分区结构
二 主控文件表与元文件 三
引导扇区结构 修复引导扇区
四
M6-1 本单元重难点
重点
NTFS分区概述 NTFS引导扇区分析 恢复NTFS引导扇区的方法 NTFS元文件介绍
难点
NTFS引导扇区BPB参数 NTFS元文件的概念和作用
一、NTFS分区结构
微软公司自推出Windows NT服务器操作系统以来, 就开发了一种与之对应的,可靠性和安全性都很 强的,可用于服务器操作系统的文件系统,即 NTFS。 它与FAT文件系统相比有许多优点:可恢复性、安 全性、保密性、数据容错、文件压缩、磁盘配额 管理等。
一、NTFS分区结构
在NTFS分区中,引入了卷概念。卷可以看成是分 区的升级版,是为了解决某些分区限制而提出的 概念,卷的操作和使用和分区是一样的。 卷分为简单卷和动态卷两种,简单卷就是一个普 通分区,而动态卷则可以实现一些高级功能,比 如可以将多个分区或者磁盘组织成一个卷,能够 动态增长容量等,使其可以支持服务器存储所需 的海量存储空间。
三、引导扇区结构
演示对NTFS分区引导扇区的BPB的分析过程。
1. 准备好NTFS分区的演示环境,如虚拟机、Winhex等。 2. 分析引导扇区BPB参数。 3. 指出重要的参数信息如$MFT簇号。
四、修复引导扇区
NTFS的引导扇区如果遭到破坏,同样可以使用备 份的引导扇区记录来恢复,只是NTFS的备份引导 扇区存于分区末尾处,这样对于普通的破坏攻击 有较好的保护作用。 它存放的形式很巧妙:假设在分区表中标识了该 分区大小为N,则在格式化为NTFS分区的时候,在 引导扇区的BPB里面给出本分区占用扇区数为N-1, 这样在分区表容量和分区内标注的容量间就有1个 扇区的空隙,这个扇区既不会被本分区操作访问 到,也不会被分区工具破坏。
二、主控文件表与元文件
在NTFS分区中,最重要的就是主控文件表(MFT), 它记载了所有文件的属性信息,甚至包括数据, 有点类似于FAT分区的文件目录表。 为了防止遭到破坏,NTFS分区将MFT的位置移到了 分区的中间,并在引导扇区中给出了它的簇号。 我们在恢复数据的时候,就是依靠MFT来完成的。
二、主控文件表与元文件
在NTFS中承担管理控制信息的数据称为元数据, 用于记载文件属性信息、簇分配信息、以及加密、 配额、日志等。这些元数据分别被组织成文件, 称为元文件。 前面所提到的BOOT区域和MFT区域,也分别被组织 为两个重要的元文件:$Boot和$MFT。 NTFS中有16个元文件,每个元文件都以美元符号 起头,以标示其特殊身份。这些元文件记录了分 区底层的结构信息,因此非常特殊而重要,被系 统保护起来,用户和应用程序不能访问它们。