Ubuntu抱怨我的根文件系统几乎满了,但是当我使用“Disk Usage Analyser”(也称为baobab)或者du -h时,它会总结所有其他已挂载的文件系统的使用情况。
我该如何排除那些挂载在各种子目录下的其他文件系统呢?
我该如何排除那些挂载在各种子目录下的其他文件系统呢?
/
下被挂载隐藏的文件都将被揭示出来并计入你的分析结果。sda1
上(df
命令可以告诉你它是哪个设备):mkdir root-rebound
sudo mount /dev/sda1 root-rebound
baobab root-rebound
sudo umount root-rebound
rmdir root-rebound
因此,-x, --one-file-system skip directories on different file systems --exclude=PATTERN exclude files that match PATTERN
du -hx
du -h --exclude /media
du -hx | sort -h
/
下的挂载点上。您会得到类似于以下内容的提示:mount: /dev/sda1 already mounted or /mnt busy
mount: according to mtab, /dev/sda1 is mounted on /
-o ro
)可能会有帮助。如果失败了,可以使用绑定挂载:mount --bind / /mnt
du -sh * | sort -h
。这个错误报告解释了如何配置baobab以忽略目录。不幸的是,你不能在应用程序内部完成,而必须使用dconf-editor
并打开org.gnome.baobab.preferences
。在这里,你会找到一个项目excluded-uris
;将其更改为['file:///path/to/ignore']
(对我来说使用单引号有效)。
du
命令,下面的shell函数称为dutop
,它将显示指定文件夹(或当前文件夹)的顶层目录。通过这个函数,你可以逐个探查子文件夹。function dutop() { du --max-depth=1 --one-file-system -h $@ |sort -h; }
/
,但你可以通过类似以下的方式解决这些问题,它会要求你输入密码(如果你最近没有提供过)。function sudutop() { sudo du --max-depth=1 --one-file-system -h $@ |sort -h; }
du -hx | sort -h
很有用,虽然 baobab 更容易理解。 - drevickodu -kx | sort -n
是我的方式。 - Alejandro Teixeira Muñozncdu -x
来代替baobab。 - rubo77