Linux du 命令不遍历挂载的文件系统

Linux du command without traversing mounted file systems

如果问题的措辞有误,请告诉我。这也许可以解释为什么我找不到答案。

我想使用如下命令查找主磁盘上的使用情况:

du -sh /*

问题是我在根级别有很多挂载点,我想 du 跳过这些。

我认为 -x 选项应该可以做到这一点,但要么我误解了它的作用,要么我使用错误的方式。

如何在不遍历附加挂载的情况下仅将 du 应用到根磁盘?

谢谢

du -x 不会遍历它遇到的任何挂载点。但是如果它被告知在挂载点start那么它会按照要求做。

这是 hacky,但它似乎可以满足您的需求,来自 shell,

for d in /*; do egrep " ${d} " /proc/mounts > /dev/null || du -sh ${d}; done

如果需要,在 du 前面添加一个 sudo