2012-10-07 39 views
4

我在学习linux文件系统。嗯,我指下面的链接:为什么根目录总是存储在inode 2中?

http://linuxgazette.net/issue21/ext2.html 
http://homepage.smc.edu/morgan_david/cs40/analyze-ext2.htm 

我得到了根目录下一个怀疑和疑问是:

为什么根目录总是存储在索引节点二号为什么不是一点人的位置?

嗯,我不确定这个问题是否有意义,但我只是想知道,所以我在这里问。

如果有任何机构可以向我推荐一些可以获得关于文件系统更多信息的好位置,那么这对我来说确实很有帮助。

+1

没有硬性规则。快速编号分配是文件系统特定的。参见http://stackoverflow.com/questions/2099121/why-do-inode-numbers-start-from-1-and-not-0 – itisravi

回答

12

第一个inode编号为1. 0用作NULL值,表示没有inode。 Inode 1用于跟踪磁盘上的任何坏块;它本质上是一个包含坏块的隐藏文件,所以它们不会被其他文件使用。坏块可以使用e2fsck -c来记录。文件系统根目录是inode 2.

特定inode编号的含义因文件系统而异。对于ext4,您可以找到更多信息here;特别看到“特别inode”表。