ext3 上的文件夹大小大于 4K

Nat*_*ams 4 linux ext3 ls

假设我们有一个默认格式化的 ext3 文件系统,我假设文件夹在磁盘上占用 4K 空间。

但是,当文件夹大于 4K 时,这意味着什么?

这是一个这样的文件夹的图片:http://datanethost.net/stuff/puttysh.png
唯一的文件是一个 .htaccess 文件,它有几个字节。我创建了一个新目录,将 .htaccess 文件移动到新文件夹中并删除了另一个奇怪的文件夹,一切又好了……但我只是觉得很奇怪。

谁能解释一下?

Pau*_*lin 6

目录从 4K 开始,但随着它需要存储更多文件名而增长。我很确定它永远不会随着这些文件被删除而再次缩小。称为“缓存”的东西很可能包含很多文件,无论是现在还是过去的某个时间。

正如斯蒂芬在评论中指出的那样,一旦您的缓存目录增长到足以容纳 10 000 个文件,那么如果删除这些文件,它仍然有空间存储 10 000 个文件,因此如果创建了一个新的 10 000 个文件,该目录不会再次增长。

  • 为目录分配的存储仅在目录被删除时返回到文件系统,但如果条目被删除,则该目录会重新使用分配的存储。为了显示这一点,创建一个空的测试目录;它将显示为 4K 大小。创建 10000 个左右的文件;目录的大小会增加。全部删除;尺寸不会减小。重新创建文件;尺寸不会进一步增加。目录的大小与它曾经包含的最大名称数有关。 (5认同)