欢迎光临散文网 会员登陆 & 注册

ext2文件格式解析

2022-01-09 17:21 作者:管理员  | 我要投稿

参考:https://akaedu.github.io/book/ch29s02.html

备份: https://www.evernote.com/shard/s461/sh/47f74a22-1807-465d-96c4-8ae9c020636a/b1286c7569a1d7b9b87c987661d53ef4

fs文件结构,其中1.txt中的内容为字符串:abc

fs文件下载地址:https://wwi.lanzoul.com/iBzwoyk4hvg


fs文件的结构

超级块

超级块中指出每个块组有128个inode,每个inode的大小是128字节,因此共占16个块,inode表的范围是Block 8-23

使用diskgenius分析:选中0x400,右键选择“数据模板”,然后模板类型选择“Ext Superblock”

根目录

根目录对应的inode

使用diskgenius分析

根目录的inode对应的数据块

根目录数据块的位置由上图中的Blocks[0]指出,也就是第24个块,它在文件系统中的位置是24(0x18)×0x400=0x6000

使用diskgenius分析

目录:.(一个点)

目录:.. (两个点)

目录:lost+found


目录lost+found

目录lost+found对应的inode对应的inode

根据上图,目录lost+found的Inode的号码11。通过它与根目录的inode(号码2)的相对位置计算(每个inode的大小是128字节):

0x2080 + (11-2) × 128 = 0x2080 + 0x9 × 0x80 = 0x2500



目录lost+found对应的数据块

根目录数据块的位置由上图中的Blocks[0]指出,也就是第25个块,它在文件系统中的位置是25(0x19)×0x400=0x6400

目录.和..省略,其中1.txt的对应的数据为


1.txt

1.txt对应的inode

根据上图,文件1.txt对应Inode的号码12。通过它与根目录的inode(号码2)的相对位置计算:

每个inode的大小是128字节

0x2080 + (12-2) × 128 = 0x2080 + 0xA × 0x80 = 0x2580

1.txt对应的数据块

根目录数据块的位置由上图中的Blocks[0]指出,也就是第38个块,它在文件系统中的位置是38(0x26)×0x400=0x9800



ext2文件格式解析的评论 (共 条)

分享到微博请遵守国家法律