这是完全没有用的,在实际使用中是不必要的,但是关于* nix系统中目录的有趣的小文章。 星期五是一样的。
在采访中,有关索引节点的无聊问题通常会流连忘返,几乎没有文件可以理智地回答。 但是,如果您深入研究,就会发现一些奇怪的东西。
了解帖子的几点:
- 一切都是文件。 目录也是文件
- 文件中的ina inode元数据已存储,但文件名未存储在此处
- 文件名存储在目录数据中
- 目录的大小(与ls中显示的相同,默认为4Kb)取决于目录中文件的数量和名称的长度
- 显然,文件越多,目录大小越大
现在,有趣的部分是:创建一个包含一百万个文件的目录,检查目录的大小,然后擦除所有文件并查看目录的大小。
$ mkdir niceDir && cd niceDir
如您所见,目录的大小没有改变,尽管看起来似乎是:)
您只能在卸载状态下使用fsck(和-D选项)来固定目录的大小(不删除)。
但是当我去寻找为什么会这样时,事实证明,十年前,这种行为已经在lkml中
讨论过了。 而且,根据开发人员的说法,修复程序根本不值得付出努力。