绕过32k子目录限制(dir_nlink?)

我已经跑到32k子目录的限制。 一些研究使得听起来像dir_nlink文件系统选项将删除这个限制,但我找不到任何文档。 它可用于ext3吗? 如果我必须升级到ext4,我该怎么做? 我可以在ext3 fs之上运行ext4,并从中获益吗? 我是否需要获得更新的内核? 我运行Ubuntu 9.04稳定的服务器,内核是2.6.18.8-linode19。 谢谢。

有时间安装数据库?

Ext4没有声明他们没有子目录限制 。 他们还表示, 从Linux 2.6.28开始,用于生产是安全的 。 他们还详细介绍了如何将ext3文件系统迁移到ext4 。 对于现有文件,应该取消子目录限制,因为只有在预升级文件不会升级的情况下。

正常的技术是创build几个级别的子目录,如果你需要存储非常大量的文件 – 但不要过度,有太多的目录也是低效的。

如果你需要存储大于32M的文件,只需将它们分解为ID的最后两位数字,那么你将得到100个文件大致均匀分布的文件。

如果你需要一个现在的解决scheme,你可以用符号链接replace子目录。 符号链接不限于32k。 这可以让你创build一个更深的目录结构,如其他人推荐的,但仍然允许程序访问它在一个平坦的空间。