喂,你磁盘满了

2021-10-28

【背景】

今早,开发环境一直登录不上去。遂查询系统日志,发现系统数据库一直输出 Cause: java.sql.SQLException: The table 'summary_machine_opening_data' is full

并且Redis也不正常 Please check the Redis logs for details about the RDB error.

【猜测】

个人猜测可能是磁盘满了导致 ,于是上服务器查看。

df -lh

果然,磁盘满了。占用最多的文件为 /var/lib/docker/overlay2 ,99G的磁盘占用了96G!!!这不是docker 挂载目录吗?MySQL和Redis也正是装在docker中的 ,确定了原因,那就找下哪个目录占用的吧?

du -s /var/lib/docker/overlay2 -h
1.5G    /var/lib/docker/overlay2

卧槽 ,这特么的显示只占用了1.5G?什么情况 what fuck?

不过,本身也就是开发服务器。一个Redis+MySQL能占多少了,没多少才合理 。那这些空间去哪儿了?

【解决】

没办法了,我查询了下。文件占用超过500M的文件有哪些

find / -type f -size +500M -print0 | xargs -0 du -h | sort -nr

那真是麻雀啄了牛屁股,确实牛逼。某日志文件占用了82g。。。

日志输出不规范,亲人两行泪。

另附上解决的时候查询的一些资料

/var/lib/docker/overlay2 占用很大,清理Docker占用的磁盘空间,迁移 /var/lib/docker 目录

Linux磁盘管理命令df和du区别