我的应用程序需要尽可能快地获得总目录大小。 Standart du
命令对于大目录来说效果很慢。 Linux inotify
的可能解决方案不适用于NFS。所以我最终得到了这些变体:
du
命令来收集应用程序的数据inotify
的功能,可以立即检测到变化)最后的方式似乎是一个解决方案,但我没有找到这样的软件。它应该像Dropbox客户端那样工作。我不知道dropbox
如何捕捉变化。
有什么建议?
我想我会保留目录(树中的每个节点)的记录,并且只有当它们被触摸时(找出使用它的最后写入访问时间)我才会每天重做一次du
(或者在你的情况下看似可行) )。
当然,这只会发现由于创建和删除文件(或重命名)而导致的更改,但我认为这并不是那么相关。如果在不创建新文件的情况下更改文件大小,则无法正常工作。但在大多数用例中,这种方法可以很好地工作。