Ubuntu 根驱动器空间不足,我无法通过 du 或 lsof 找到源

Ubuntu 根驱动器空间不足,我无法通过 du 或 lsof 找到源

Ubuntu 15.10 机器上的根驱动器空间即将用尽,但我找不到来源。空间不足的驱动器是sdb2,可用空间为 51G,其中 313M。文件系统是ext4

输出如下sudo du -h / --max-depth=1

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           789M  9.4M  780M   2% /run
/dev/sdb2        51G   48G  313M 100% /
tmpfs           3.9G   12K  3.9G   1% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sdb1       511M  3.4M  508M   1% /boot/efi
tmpfs           789M  8.0K  789M   1% /run/user/1000
/dev/sda1       239G  122M  239G   1% /media/DATA

但我找不到任何大文件。 总使用量/似乎只有 3.4 G。 以下是 的输出sudo du -h / --max-depth=1

4.0K    /mnt
188K    /tmp
406M    /home
339M    /var
8.1M    /etc
361M    /lib
du: cannot access ‘/proc/7626/task/7626/fd/4’: No such file or directory
du: cannot access ‘/proc/7626/task/7626/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/7626/fd/3’: No such file or directory
du: cannot access ‘/proc/7626/fdinfo/3’: No such file or directory
0    /proc
13M    /bin
du: cannot access ‘/run/user/1000/gvfs’: Permission denied
9.4M    /run
1.6M    /root
4.0K    /lib64
16K    /lost+found
0    /sys
1.1M    /media
12K    /dev
222M    /opt
2.0G    /usr
62M    /boot
9.5M    /sbin
4.0K    /cdrom
8.0K    /srv
3.4G    /

我在这里发现了类似的问题:磁盘空间不足,原因是什么?

在这种情况下,问题似乎是由已删除的日志引起的,该日志不知何故未被正在运行的进程关闭,而找到它的方法是运行sudo lsof | grep deleted。 在我的例子中,输出是

lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
      Output information may be incomplete.

此外,重新启动系统后问题仍然存在,因此这不太可能是原因。

另一个建议的解决方案是卸载/var/lib/ureadahead/debugfs,但我犹豫是否这样做。

还有什么可能出错?

答案1

嗯,这只是一个猜测,但它可能会有效:我认为用户曾经忘记以 为 进行挂载,/dev/sda1并且/media/DATA所有数据都写入了/dev/sdb2而不是/dev/sda1

要检查这一点,请卸载/media/DATA并检查此路径下的文件和文件夹。

答案2

我经常为此使用“ncdu”,它足够小,仍然可以安装它。

sudo apt-get install ncdu

只需确保以 root 身份或通过 sudo 运行它:

sudo ncdu /

答案3

当你想知道特定文件系统中空间的使用情况时,你可以使用此命令查找 20 个最大的目录,这可以帮助你找到使用空间最多的位置,

du -m / |sort -n |tail -20

但是根文件系统更难,因为所有文件系统都挂载到根目录。但是 -x(--one-file-system)参数将仅报告所需的文件系统,

du -m -x / |sort -n |tail -20

答案4

df -h *.* 

可能有帮助。

遍历目录并计算使用的字节数。

相关内容