我需要一些帮助来解决一些磁盘空间问题。实际上,我正在使用具有 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
?我的看起来没问题。我试过了autoclean
,autoremove
没有任何问题,一切都正常。
顺便说一句,我还有一个 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
我这样的新手来说比较全面。