EXT2:了解 inode 位图

Posted

技术标签:

【中文标题】EXT2:了解 inode 位图【英文标题】:EXT2: Understanding inode bitmaps 【发布时间】:2020-11-01 04:21:22 【问题描述】:

我在 EXT2 文件系统中每个块有 1280 个 inode。 我想知道我知道使用的inode 1282的状态。 我读取了对应于第二组的 inode 位图的第一个字节。 我得到 0x07,意思是 00000111,意思是 inode 1282 是空闲的,其实它不是。

我的理解有什么问题?

谢谢

【问题讨论】:

前三个 inode 被标记为已使用。您的问题是您正在从左到右读取位,而最低位(即右侧的位)向您显示第一个 inode 的状态,因此您应该从右到左读取位。 完全正确!非常感谢! @MadKarel :由于您的评论回答了问题,请考虑再次发布它作为答案。 我不确定我是否遗漏了什么,所以我不想发布不正确的答案。如果这解决了问题,那么我会将其作为答案发布。 【参考方案1】:

前三个 inode 被标记为已使用。您的问题是您正在从左到右读取位,而最低位(即右侧的位)向您显示第一个 inode 的状态,因此您应该从右到左读取位。

【讨论】:

以上是关于EXT2:了解 inode 位图的主要内容,如果未能解决你的问题,请参考以下文章

文件系统(ext2)及linux相关文件指令

Linux文件系统

linux-磁盘结构

理解Linux—inode

ext2/3/4的inode结构说明

Linux C ext2fs_write_inode_full 无法写入