为什么“ /”具有索引节点2?


8

在OS X和Ubuntu等许多* nix系统上,我们可以看到根目录的inode是2。那么inode 1的作用是什么?


7
这将因文件系统而异;您对某一特定玩具感兴趣吗?通常,inode 1用于坏块列表,但这不是必需的。
Michael Homer

2
这样的答案可能是相关的:stackoverflow.com/a/2109363/2808351
dhag 2015年

“为什么”实际上是“因为ext4开发人员决定这样做”。AFAIK inode for /在文件系统之间有所不同,并且未在POSIX标准中的任何地方指定。当然,在原始的AT&T UNIX或System V中可能是如此,因此可以认为是一种传统,但绝对不是一成不变的。
Sergiy Kolodyazhnyy

Answers:


7

索引节点0用作NULL值表示没有索引节点。

索引节点1用于跟踪磁盘上的任何坏块;它本质上是一个包含坏块的隐藏文件。使用记录的那些坏块e2fsck -c

根目录使用索引节点2,它指示文件系统索引节点的启动。


我们应该注意,除0以外,其他值均来自传统且并非固定不变。例如,minixfs具有/作为inode 1,并且badblocks与inode /.badblocks相同。
约书亚

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.