快速获取完整目录大小的方法

时间:2012-07-16 18:19:31

标签: filesystems size du

我的应用需要尽快获得总目录大小。 Standart du命令对大目录运行缓慢。 Linux inotify的可能解决方案不适用于NFS。所以我最终得到了这些变体:

  • 跟踪应用中的文件更改(非常难)
  • 每天运行一次du命令以收集应用数据
  • 一个简单的索引器(具有inotify - 类似于立即检测更改的功能)

最后的方式似乎是一个解决方案,但我没有找到这样的软件。它应该像Dropbox客户端那样工作。我不知道dropbox如何捕捉变化。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我想我会保留目录(树中的每个节点)的记录,并且只有在触摸它们(使用其上次写访问时间来查找它们)的情况下,我才每天重做du(或您认为可行的方法。

当然,这只会发现由于创建和删除文件(或重命名)而导致的更改,但是我猜这不太相关。如果您在没有创建新文件的情况下更改了文件大小,则此操作将无法正常进行。但是在大多数使用情况下,这种方法可能效果很好。