linux运维(二)一次磁盘空间占满处理经过

今天一台配置比较低的服务器上部署的Java服务突然莫名其妙报错了, ps aux | grep java命令一看,进程在正常运行中。

通过less命令查看日志文件,跳转到日志底部,发现打印不出日志,这可真是奇怪,再次确认还是打印不出来。于是重启服务,这一次竟然启动失败了。我是通过supervisord来管理的打印日志文件的,依旧看不到启动时候的打印日志。

再接着直接通过java -jar xxx.jar的方式启动,直接将日志打印输出到桌面,这一次我终于看到了问题:

共享内存文件空间不足

直接搜索,才知道可能是磁盘空间满了,一般是服务打印的日志文件过多导致的。
于是我使用df -h命令,查看文件系统的空间占用情况。当时这一样的使用率是100%,可用空间为数字0(图片是解决之后的截图)。

查看磁盘空间使用情况

当前文件系统不是直接可以直接访问的目录文件

由于当前文件系统不是可以直接访问的目录文件,因此只能到根目录执行du -sh *
根目录执行 du -sh * 结果

可以看到/home中占用了大量的磁盘空间,于是进入/home路径下,一层层du -sh *执行下去,最后定位到占用大容量的文件路径,果不其然,是有一个监控cpu和内存的服务在每分钟每秒钟不停的打印日志,于是停掉了该服务,并且将日志文件全部删除。

至此,磁盘空间就腾出来了。
重启服务,一切恢复正常!

你可能感兴趣的:(linux运维(二)一次磁盘空间占满处理经过)