文件系统分析
介绍
元文件(Metafiles)
是一个记录了该分区文件系统相关信息的二进制区域
,但它并不算一个文件,因为整个磁盘没有任何一处地方记录了它的命名、大小等属性(元文件根本就没有命名、大小之类的属性)。
磁盘类/原始数据查看之类的工具为了方便人操作,会把它看作是一个特殊的文件来处理。并根据文件系统相关标准文档给该二进制区域一个命名,如 $FAT1 $Boot 或 FAT1 Boot 等
但以$号开头的不一定是元文件,元文件的名字怎么显示取决于磁盘类/原始数据查看工具
也就是说,显示元文件是需要工具软件本身的支持,WinHex是使用了模板来自动解析划分二进制区域为元文件
环境:
WinHex 下载(仅限于学习用途Crack):WinHex19.3_x86.zip 或 WinHex_v19.9_x86_x64.7z - 工具-打开磁盘(忘记哪个可以用了,但是打开大分区都会卡生成目录结构无响应,等待即可)
DiskGenius - View - Show Metafiles
Windows10 x64/Intel i3-4150/HDD(GPT 分区表)
DiskGenius 文件属性含义表
NTFS
不显示元文件
显示元文件
WinHex
而启动盘(C 盘)的元文件稍微多几个
$Extend 是一个目录型的元文件(Unix规范把文件分为7种,目录是其中一种,Windows应该遵循了部分规范),目录是个例外,因此本文不讨论它
元文件 $Boot 的二进制数据,前三个字节正是 Intel X86 架构的启动跳转代码(更多见 https://www.cnblogs.com/yucloud/p/10943215.html )
FAT32
不显示元文件
显示元文件
其中
WinHex能显示 FAT文件系统的 元文件、临时文件、已删除的文件
,但是没有显示记录文件目录结构信息的 $RootDir
这再次验证了元文件本身不是文件,而是构成文件系统的二进制区域,识别取决于磁盘类工具的内置模板
HFS+
更多资料:
- 元文件|数据恢复迷
- The Implementation of WSL File Permissions https://docs.microsoft.com/en-us/windows/wsl/file-permissions