1

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

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

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

有什么建议么?

4

1 回答 1

0

我想我会记录目录(树中的每个节点),并且只有在它们被触及时(使用它的最后一次写入访问时间找出)我会du每天重做一次(或者在你的情况下似乎可行) .

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

于 2019-03-19T15:55:03.117 回答