mft文件记录属性头包括_关于NTFS-MFT

一、Ntfs文件系统在磁盘上的分布

一个ntfs文件系统由引导扇区、MFT(包含MFT元数据)和数据区组成。

NTFS中存储了两份MFT备份以防MFT文件损坏,两个MFT备份的具体起始位置都存储在引导扇区中。

image.png

二、引导扇区($Boot)

引导扇区是从NTFS文件系统的第一个扇区开始,以55 AA结尾。我们主要关注前88字节的信息,其中重要的就是“NTFS”标识、扇区大小、每簇扇区数、MFT起始簇以及MFT备份MFTMirr位置这些信息。我们可以根据MFT起始簇信息找到MFT,或者根据MFT备份MFTMirr位置找到MFT的另外一个MFT备份。如下图所示:

image.png

1 typedef struct NTFS_BPB{     // 在cmd 输入 fsutil fsinfo ntfsinfo d: 查询 NTFS 信息

2 UCHAR jmpCmd[3];

3 UCHAR s_ntfs[8]; // "NTFS " 标志

4 // 0x0B

5 UCHAR bytesPerSec[2]; // 0x0200  扇区大小,512B

6 UCHAR SecsPerClu; // 0x08   每簇扇区数,4KB

7 UCHAR rsvSecs[2]; //       保留扇区

8 UCHAR noUse01[5]; //

9 // 0x15

10 UCHAR driveDscrp; // 0xF8 磁盘介质 -- 硬盘

11 UCHAR noUse02[2]; //

12 // 0x18

13 UCHAR SecsPerTrack[2]; //  0x003F  每道扇区数 63

14 UCHAR Headers[2]; //  0x00FF 磁头数

15 UCHAR secsHide[4]; //  0x3F  隐藏扇区

16 UCHAR noUse03[8]; //

17 // 0x28

18 UCHAR allSecsNum[8]; // 卷总扇区数, 高位在前, 低位在后

19 // 0x30

20 UCHAR MFT_startClu[8]; // MFT 起始簇

21 UCHAR MFTMirr_startClu[8]; // MTF 备份 MFTMirr 位置

22 //0x40

23 UCHAR cluPerMFT[4];     // 每记录簇数 0xF6

24 UCHAR cluPerIdx[4];     // 每索引簇数

25 //0x48

26 UCHAR SerialNum[8];    // 卷序列号

27 UCHAR checkSum[8];     // 校验和

28 }Ntfs_Bpb,*pNtfs_Bpb;

三、主文件表 (Master File Table, MFT)

MFT是什么,什么作用?

在NTFS中,整个卷的所有文件信息(包括MFT本身、数据文件、文件夹等等)都存储在MFT。每一个文件在 MFT 中都有一个或多个 MFT 项记录文件属性信息。而且每项大小是固定的(一般为1KB),MFT保留了前16项用于特殊文件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值