今天早上,我注意到有人在服务器背面插入了 USB 驱动器。 (我稍后必须结束这种做法)。由于某种原因,CentOS 7 将磁盘 /dev/sdc1 挂载在 /run/media// 下。我还注意到,当我运行时df
,我的 /dev/mapper/centos-root 已满。好的,浏览了 /withdu
并注意到闪存驱动器已自行安装在这里并以某种方式占用了剩余空间。
于是我跑了umount /run/media/<user>/<uuid>
,它就消失了。伟大的。但df
仍然表明我已满并且服务器遇到磁盘空间不足的常见问题。现在更糟糕的是,服务器重新启动后我只能进入维护模式。我如何释放这个空间,甚至知道 fs 绑定了什么?
编辑:这本质上是另一个df -H
不同意的du
问题。根据 df 的说法,我的 root 上只有 800MB/54GB 可用空间,因此我无法启动。但是通过使用du -h --max-depth 1 /mnt/sysimage/
(其中 /mnt/sysimage/ 只是 / 因为我现在处于恢复模式)。它输出类似这样的内容(不能直接复制):
264M /mnt/sysimage/boot
0 /mnt/sysimage/dev
26G /mnt/sysimage/home
0 /mnt/sysimage/proc
... small stuff - MB scale
1.7G /mnt/sysimage/var
那么这些加起来如何才能填满 54GB 磁盘呢?如上所述,在崩溃之前,这个神秘的 USB 驱动器已被安装/run/media/<user>/<uuid>
并因此位于 / 这仍然可以绑定到文件系统吗?
答案1
挂载不会直接消耗已挂载文件系统上的空间。
确保您已安装文件系统的根目录/mnt/sysimage
(而不是例如 Btrfs 子卷),并且顶部没有任何内容(这可能会隐藏大文件)。您可以通过检查来检查这一点/proc/self/mountinfo
。
如果这不能揭示原因,请在文件系统上运行适当的 fsck 工具。
对于 Btrfs,请尝试使用该clear_cache
选项安装。