mft文件记录属性头包括_NTFS 文件系统基础知识
1. NTFS 中所有都是文件,包括无数据,都是以文件形式进行访问。
元数据文件包括:
$Mft $MftMirr $LogFile $Volume $AttrDef $BitMap $Boot $BadClus $Quota $UpCase $Cairo。
2. 普通文件(目录)的信息都是通过属性/值对来表示的。
3. $MFT 中记录了所有文件的文件记录,文件记录大小一般为 1K。也就是每个文件都会在 $MFT 文件中存放一份记录,且这个文件记录一般为 1K 大小。
文件记录里一般也是属性-值对来组织。
4. 文件属性包括
#define$UNUSED (0X0)
#define$STANDARD_INFORMATION (0x10)
#define$ATTRIBUTE_LIST (0x20)
#define$FILE_NAME (0x30)
#define$OBJECT_ID (0x40)
#define$SECURITY_DESCRIPTOR (0x50)
#define$VOLUME_NAME (0x60)
#define$VOLUME_INFORMATION (0x70)
#define$DATA (0x80)
#define$INDEX_ROOT (0x90)
#define$INDEX_ALLOCATION (0xA0)
#define$BITMAP (0xB0)
#define$SYMBOLIC_LINK (0xC0)
#define$EA_INFORMATION (0xD0)
#define$EA (0xE0)
#ifdef_CAIRO_
#define$PROPERTY_SET (0xF0)
#endif // _CAIRO_
#define$FIRST_USER_DEFINED_ATTRIBUTE (0x100)
#define $END (0xFFFFFFFF)
5. 如果一个数据属性太大而导致一个文件记录不够存储,则会使用行串(run)来组织,一般一个文件的数据就是由这些行串表来组织起来的。对于非数据属性,也可以这么做。
其实准确地说,并不一定是一个数据属性,而是一个非驻留属性,即文件记录并不能记录一个属性的所有内容时,那么文件记录中只会保留属性头和行串信息,在数据区域里,这些行串信息所代表的数据,才表示这个属性。
6. 如果一个文件记录不能存储下所有属性或属性头,也就是一个文件的属性太多时(常常是因为数据区太碎,导致属性头中的行串太多),则其它属性会分配其它文件记录来存储,在 $ATTRIBUTE_LIST 里面会有串联信息(文件引用)。那么第一个 MFT 记录被称为 base file record。
7. 文件(记录)引用:指该文件在 MFT 中的位置。
8. 文件目录,对于小的文件目录,它的子文件及目录的文件引用信息被存放在 $INDEX_ROOT 属性中(不是 $DATA),对于大目录,用 B-树用来存放这些信息。B-树中的每一项,除了包含文件名(目录名)外,还包含相应的文件记录引用以及时间戳和大小等。$INDEX_ALLOCATION 记录了这些缓冲的行串信息。位图属性记录中缓冲区中哪些 VNC 被使用。所以 $INDEX_ROOT, $INDEX_ALLOCATION, $BITMAP 构建了这个 B-树。
9. $INDEX_ALLOCATION 记录了目录项的所有行串。
10. 行串表示为 ,表达式为 <0xXY Legnth(占用 x 个簇) Offset(y 起始簇号)>,比如: 0x31 0x06 0x12 0x34 0x56 ,表示 Length 为一个字节,偏移为 3 个字节,即表示从 簇号为 0x563412 开始的 0x06 个簇的空间。
行串计算的偏移是相对的,且是有符号的,第二个行串的偏移是根据第一个行串的偏移得来的。即拿第二个行串的偏移加上第一个行串的偏移,才得到第二个行串的真正偏移。
原文:http://blog.csdn.net/henzox/article/details/39579029
mft文件记录属性头包括_NTFS 文件系统基础知识相关推荐
- mft文件记录属性头包括_学懂主流NTFS分区文件系统,你也可以成为MM眼中的大神!...
主要NTFS文件系统小讲第一课,学会了你也可以使用WINHEX进行底层数据分析,误删,误格式化,分区出错等一些故障在数据恢复软件处理不了时,你也可以通过这些知识来提高恢复几率. 由于篇幅有限不太可能一 ...
- mft文件记录属性头包括_关于NTFS-MFT
一.Ntfs文件系统在磁盘上的分布 一个ntfs文件系统由引导扇区.MFT(包含MFT元数据)和数据区组成. NTFS中存储了两份MFT备份以防MFT文件损坏,两个MFT备份的具体起始位置都存储在引导 ...
- linux文件基础知识,linux文件系统基础知识
利用直接指针.单级间接指针.二级间接指针.三级间接指针可保存的最大文件大小为: 1024*12+1024*256+1024*256*256+1024*256*256*256=16843020 KB,约 ...
- NTFS 文件系统基础知识
1. NTFS 中所有都是文件,包括无数据,都是以文件形式进行访问. 元数据文件包括: $Mft $MftMirr $LogFile $Volume $AttrDef $BitMap ...
- Linux操作系统文件系统基础知识详解
标签:基础知识操作系统根目录Linux程序 一 .Linux文件结构 文件结构是文件存放在磁盘等存贮设备上的组织方法.主要体现在对文件和目录的组织上. 目录提供了管理文件的一个方便而有效的途径. Li ...
- linux文件系统基础知识
这两天看了一本fedora 6的实践教程,下面是有关linux文件系统知识的学习笔记: 1.linux文件系统分配策略: 块分配( block allocation ) 和 扩展分配 ( e ...
- unix/linux文件系统基础知识
1.linux文件系统分配策略: 块分配( block allocation ) 和 扩展分配 ( extent allocation ) 块分配:磁盘上的文件块根据需要分配给文件,避免了存储空间的浪 ...
- 属性加密(ABE)基础知识
属性加密 最近在看ABE相关论文,因为本人(数学功底一般)不太能理解其中原理.所以特意记录ABE的基础知识,以便日后能快速重温. ABE常见分类 属性基加密的思想是让密文和密钥与属性集合和访问结构产生 ...
- html clear属性值,【Web前端基础知识】clear使用方法
[摘要] 前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页.下面是[Web前端基础知识]clear使用方法,小编建议有准备参加考试的备考生一定要合理规划时间,仔细阅读相关规定,提 ...
最新文章
- android: 在android studio中使用retrolambda的步骤
- BLE安全机制从入门到放弃
- word标题大纲级别_快速按标题层级把Word转Excel—附详细操作步骤
- spring mvc教程_Spring MVC教程
- Cisco单臂路由实验
- Rust中mut, , mut的区别
- 数据分析用r还是python_想要从事数据分析,选择python还是R语言呢?
- java有常函数_Java开发笔记(十一)常见的数学函数
- POJ 2709 Painter 【贪心算法】
- 【渝粤教育】国家开放大学2018年春季 0420-22T酒店管理概论 参考试题
- linux虚拟内存和win,linux下的vm(虚拟内存)和windows下的作用是一样的,均是防止真实内存资源不足准备的. linux的vm相关参数...
- SpringBoot(三) SpringBoot中的日志配置
- 一场暴雨引发的装机日记
- asp.net937-图书馆座位管理系统
- CAS单点登录:CAS客户端搭建(整合Shiro和Spring Boot)
- 素数p阶群乘法循环群啥意思_如何证明素数阶群都是abel群?
- zxing 二维码生成深度定制
- 1+X 云计算运维与开发(中级)案例实战——搭建harbor私有仓库并实现主从同步
- VCS编译仿真警告Warning
- C++Python描述 LeetCode 1109. 航班预订统计
热门文章
- 6、存储函数详解,创建,查看,修改,删除
- 【C++】this指针
- raise IOError('The file is not exist!')
- MySQL中如何约束和排序数据
- 中心线超出轮廓线多少_激光切割的这些基础知识,你知道多少?
- 3000 字说说跨域!面试官听完之后露出了满意的笑容
- SSM三大框架整合Springfox(Swagger2)详细解决方案
- 怎么解决java.lang.NoClassDefFoundError错误
- Java数据库连接(JDBC)之一:JDBC详细连接过程
- 杭电oj2072,2091字符串java实现