为什么这个空目录是 3.5MB?

she*_*n89 16 directory ext4

我刚刚阅读了这个问题:目录的大小在“ls -l”命令的输出中意味着什么?

......这并不能完全回答我的问题。基本上,我正在将文件移动到 NAS 上。我已经移动的文件夹完全是空的,没有隐藏文件或任何东西,但du仍然报告它们的大小为 3.5MB。诚然,它们以前包含大量文件,文件名很长。

这个大小是否仅仅是因为该目录中文件的数量和名称长度?既然文件夹是空的(ext4 文件系统),为什么大小没有减小?

jim*_*ara 17

从目录中删除所有文件时,对于大多数文件系统,目录大小保持不变。

如果目录为空,

rmdir ./directory_name; mkdir ./directory

生成的新目录会更小。但是随着文件的添加,它会变得更大。不要担心目录文件的大小与单个目录中的文件数一样多。单个目录中的大量文件会对文件查找性能产生负面影响。即使有足够的 inode 缓存。

  • 1 个目录中的大量文件实际上只对 ext 文件系统很重要。其他像 xfs、btrfs、reiser 等没有同样的问题。 (4认同)
  • 那是正确的。但是 ufs 和其他人一样也有问题。虽然这个问题严格来说是 ext4,但这个问题无处不在,所以我提到了它。 (2认同)