【问题标题】:Quick way to get full directory size获取完整目录大小的快速方法
【发布时间】:2012-07-16 18:19:30
【问题描述】:

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

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

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

有什么建议吗?

【问题讨论】:

    标签: filesystems size du


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-01-24
      • 2012-02-16
      • 2012-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多