【发布时间】:2010-11-29 10:51:18
【问题描述】:
我正在运行一个守护进程,它分析目录中的文件,然后删除它们。万一守护进程由于某种原因没有运行,文件就会堆积在那里。今天我在那个目录中有 90k 个文件。再次启动守护进程后,它处理了所有文件。
但是,目录仍然很大; “ls -dh。”返回大小为 5.6M。如何“整理”该目录?我已经发现重命名该目录,并创建一个具有相同名称和权限的新目录可以解决问题。但是,随着文件随时写入其中,似乎没有一种安全的方法可以重命名目录并创建一个新目录,因为暂时,目标目录不存在。
那么 a) 有没有一种方法/a (shell) 程序可以对 ext3 文件系统上的目录进行碎片整理?或者 b) 有没有办法在目录上创建锁,以便在重命名/创建完成之前尝试写入文件阻塞?
【问题讨论】:
-
顺便说一句。显然您可以使用“filefrag”命令来检查目录是否碎片。
标签: filesystems directory ext3