使用 du 排除已安装的卷但仅检查根卷

使用 du 排除已安装的卷但仅检查根卷

我正在尝试检查我的磁盘使用情况,因为我的根卷已满。我在 Centos 7.5 上。

我认为给予 du -x 标志会让它忽略已安装的卷。

但是当我检查这个 centos 盒子上的磁盘使用情况时,我得到了这个输出:

[root@bc1 /]# du -skx * | sort -nr | head -10
du: cannot access ‘proc/24813/task/24813/fd/3’: No such file or directory
du: cannot access ‘proc/24813/task/24813/fdinfo/3’: No such file or directory
du: cannot access ‘proc/24813/fd/3’: No such file or directory
du: cannot access ‘proc/24813/fdinfo/3’: No such file or directory
207749412       data
61255660        home
1114652 usr
177732  var
138592  boot
124312  root
52112   run
34276   etc
52      tmp
0       sys

但是 /data 分区是从另一个卷挂载的。我想将其排除。

[root@bc1 /]# df -h /data
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda        246G  199G   36G  85% /data

为什么 du 的 -x 标志不排除此卷?我如何让 du 仅显示根卷?

答案1

当您进入/并使用星号时,du -skx *您明确要求 du 查看数据。

echo *应该阐明星号的作用。

不妨尝试du -skx /一下。

答案2

我使用类似这样的方法检查“/”文件系统中的本地目录空间。cd /

for d in `ls /` ; do cat /proc/mounts | awk '{print $2}' > ./dummy_file ; if grep -q $d ./dummy_file; then echo " $d is in seperate mount " ; else du -sh $d ; fi ; done

相关内容