exFAT文件系统分析及DBR手动修复
2018-09-06王赟
王 赟
(山西职业技术学院,山西 太原 030006)
0 引言
随着信息化的不断发展,闪存中单个大文件的存储需求越来越高,FAT32文件系统的闪存很多时候已不能满足需求,NTFS文件系统则不适用于闪存介质(执行每一个读写操作都需要对介质进行多次访问,对闪存芯片损伤较大)。exFAT(Extended File Allocation Table File System)文件系统的出现有效解决了这一难题,同时exFAT文件系统下数据恢复需求也随之增加,只有深入了解exFAT文件系统结构,才能有效恢复丢失数据,减少用户损失。
1 exFAT文件系统简介
1.1 exFAT文件系统结构
exFAT文件系统是由DBR、FAT表、位图文件(BITMAP)、大写文件(UPCASE)、数据区(DATA)组成[1]。结构示意图如图1所示。

DBRFAT表位图文件大写文件数据区(包括目录存放区以及用户数据)
图1 EXFAT结构示意图
1.2 DBR参数信息标注图(如图2所示)
下面对这些参数做详细的分析。
1) 跳转指令:固定值。
2) 铭文标志:EXFAT。微软将此处设置为EXFAT。
3) MBR保留:MBR到当前位置的扇区数。
4) 分区大小:分区所占用扇区数。
5) FAT表起始扇区:FAT表开始的扇区号。
6) FAT表大小:FAT表所占用扇区数。
7) 首簇起始扇区号:首簇即第二簇(位图文件)开始的扇区号。
8) 分区内总簇数:分区内一共有多少个簇(也是从二号簇开始计算)。
9) 根目录首簇号:根目录位于第几簇。
10) 卷序列号:无意义。
11) 每扇区字节数:2的9次,512。
12) 每簇扇区数:2的6次,64。

图2 DBR信息标注
在exFAT文件系统下0-8扇区都是作用分区,即结尾都写55 AA结束标志,一旦55AA被破坏,分区则提示未格式化。
1.3 FAT表分析
exFAT文件系统和FAT32有极大的相似性,数据都从第二簇开始记录,也都有FAT表[2]。在FAT32中,有两个FAT表,用来记录簇的占用情况。而在exFAT中,只有一个FAT表,并且只有产生碎片文件时,才会在FAT表中记录[3]。……
