在linux / bsd上快速了解真实目录大小的方法

Modified on: Sun, 18 Aug 2019 16:20:02 +0800

计算真实目录大小的最快方法是什么?我不知何故发现自己需要这么多。

简单地做:

# du -hs /dir

太慢了。是否有任何我可以运行的服务会定期计算目录大小并将其缓存以供以后参考? (类似于定位数据库)

作者:Karolis T.

最佳答案

可悲的是,我不知道有什么,但写一个不应该太难。每晚一次,运行

# du -a / > /var/lib/filesizes.txt. 

然后你只需要一个小脚本来总结它们。像:

# perl -ne 'BEGIN { $total = 0 } if ($_ =~ m/(\d+)\s+\/var\/www\//) { $total+=$1;} END {print "$total\n";}' /var/lib/filesizes.txt

如果你想要更多同步的东西,那么你将不得不开始编写使用inotify的东西,找出文件系统何时更改并更新数据库,这可能类似于bdb。


相关问答

添加新评论