磁盘 /dev/root 已满,但无法确定原因

磁盘 /dev/root 已满,但无法确定原因

我需要一些帮助来解决一些磁盘空间问题。实际上,我正在使用具有 50Gb 磁盘空间的私有 vps 云服务器。

当我跑步时df -h,我得到:

Filesystem      Size  Used Avail Use% Mounted on
/dev/root        48G   45G  570M  99% /
devtmpfs        2.0G  4.0K  2.0G   1% /dev
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            395M  524K  395M   1% /run
none            5.0M     0  5.0M   0% /run/lock
none            2.0G     0  2.0G   0% /run/shm
none            100M     0  100M   0% /run/user

df -i返回:

Filesystem      Inodes IUsed   IFree IUse% Mounted on
/dev/root      3141600 78065 3063535    3% /
devtmpfs        505084  1438  503646    1% /dev
none            505206     2  505204    1% /sys/fs/cgroup
none            505206   891  504315    1% /run
none            505206     2  505204    1% /run/lock
none            505206     1  505205    1% /run/shm
none            505206     2  505204    1% /run/user

但是当我跑步时du -sh / | sort -nr | head,我得到:

du: cannot access â/sys/kernel/slab/L2TP/IPv6â: No such file or directory
du: cannot access â/sys/kernel/slab/L2TP/IPâ: No such file or directory
du: cannot access â/proc/391/task/391/fd/4â: No such file or directory
du: cannot access â/proc/391/task/391/fdinfo/4â: No such file or directory
du: cannot access â/proc/391/fd/4â: No such file or directory
du: cannot access â/proc/391/fdinfo/4â: No such file or directory
du: cannot access â/proc/402â: No such file or directory
du: cannot access â/proc/32350â: No such file or directory
du: cannot access â/proc/32354â: No such file or directory
du: cannot access â/proc/32356â: No such file or directory
du: cannot access â/proc/32360â: No such file or directory
du: cannot access â/proc/32363â: No such file or directory
du: cannot access â/proc/32368â: No such file or directory
8.9G    /

所以我知道这两个命令不会返回相同类型的信息。第一个命令返回文件系统磁盘使用情况,另一个命令返回文件使用的空间。

没有安装的驱动器或设备,日志重量约为167M。

我尝试了,cat /proc/mounts结果返回:

rootfs / rootfs rw 0 0
/dev/root / ext4 rw,relatime,errors=remount-ro,data=ordered 0 0
devtmpfs /dev devtmpfs rw,relatime,size=2020336k,nr_inodes=505084,mode=755 0 0
sysfs /sys sysfs rw,relatime 0 0
none /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
none /proc proc rw,nosuid,nodev,noexec,relatime 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw,nosuid,nodev,noexec,relatime 0 0
none /sys/fs/cgroup tmpfs rw,relatime,size=4k,mode=755 0 0
none /sys/fs/fuse/connections fusectl rw,relatime 0 0
none /sys/kernel/security securityfs rw,relatime 0 0
none /run tmpfs rw,nosuid,noexec,relatime,size=404168k,mode=755 0 0
none /sys/fs/pstore pstore rw,relatime 0 0
none /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0
none /run/shm tmpfs rw,nosuid,nodev,relatime 0 0
none /run/user tmpfs rw,nosuid,nodev,noexec,relatime,size=102400k,mode=755 0 0
systemd /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,name=systemd 0 0

那么我能确定是什么占用了这么多空间吗du?我的看起来没问题。我试过了autocleanautoremove没有任何问题,一切都正常。

顺便说一句,我还有一个 cron,它运行数据和 mysql 转储并将其发送到 Dropbox。但 7 个文件夹(7 天备份)仅使用 1.7gb 的磁盘空间。

答案1

OP说

我想到了。

实际上,我使用脚本启动应用程序文件的备份并同步到 Dropbox。事情是这样的:我有一个同步脚本,它告诉从哪个应用程序获取备份,然后将其同步到 Dropbox。但是同步是双向的

临时同步文件与同步脚本位于同一文件夹中。由于未知原因,该脚本被执行多次而不是一次(可能是 cron 配置错误)。因此每个实例都在使用一些磁盘空间进行同步,最终我用完了磁盘空间。

答案2

您还有其他偶尔会挂载的分区吗?几个小时前,我刚刚尝试帮助遇到类似问题的人:14.04 磁盘安装问题出乎意料我们一起发现,他曾经挂载了一个分区用于备份,但分区崩溃了(我想是电源故障)。之后,该分区不知何故一直处于挂载状态,成为 /media/ 中无法访问的文件夹,并且还计入磁盘使用信息。最后,他只是删除了损坏的挂载点,解决了这个问题。
所以,你也有一些死挂载吗?那么你可以尝试删除它们(始终建议备份!我对最终损坏的数据不承担任何责任!)。

答案3

我用sudo du -hsx /* | sort -rh | head -n 40 在 ask ubuntu 上找到逐层扫描文件夹,发现是docker占用了空间。这个命令的结果对于du我这样的新手来说比较全面。

相关内容