Answers:
至于更优化的版本du
,我还不知道。我想到的是:
stat -c '%h'
)-2 ,则只需使用目录的硬链接数即可快速完成此操作。在所有这些中,配额和专用分区选项可能是最简单,最有效的。
问题在于“ du”必须枚举子树中的每个对象。这是一个元数据密集型操作,并且对于大多数Linux文件系统来说需要一段时间。想到了一些文件系统,NTFS和Novell的NSS,它们能够在元数据中跟踪这样的目录大小,从而大大加快了此操作。通常,如果您的文件系统支持某种类型的目录配额,则它必须在内部跟踪此数据以进行实施,每个大小更改都将复制到目录树上,直到配额点(NTFS)或每个目录(NSS) )发生时,因此获得目录树的大小非常快。
不幸的是,没有一种方法可以使du更快地运行,而只有解决方法。
如果您只想为根文件系统使用磁盘,则
df -h /
也许
df -h
因为简短而简洁的答案还不足以使serverfault认为我是人类。
如果文件系统不经常更改,则应使用dnotify计算磁盘使用率。