tail -f 进程过多导致磁盘空间不够的问题
今天遇到一个很奇怪的问题, 收到zabbix的告警,说根分区磁盘用了95%, 登上服务器执行 df 命令一看确实用了这么多,现象如下

根分区居然用到了96%, 接下来就排查下哪方面占用了这么多的空间, 执行 du -sh /* 命令, 现象如下

这一看加起来也就不到10G啊, 根本没有用到30G (根分区总容量30G), 奇怪,到底是哪里用了呢。当时查了好久。 后来想想是不是存在可疑的进程导致, 于是 执行 ps aux 命令, 现象如下

可以看到有大量的 tail -0f 命令, 大家都知道这个命令是用来监控文件的变化, 如果文件很大的话, 这样的命令其实太消耗系统资源。 于是再次过滤下tail的进程

没错, 当时感觉这些进程有问题, 然后把它们全部杀了 (生产环境乱杀进程是不好的, 但当时为了解决问题, 而且tail 不是系统层面的进程,所以就做了)

再次查看磁盘空间,发现空间占用下来了, 问题解决

结论: 开了太多的 tail -0f 命令,导致临时占用了磁盘空间。 作为运维还是要时刻关注系统层面的东西和细节。
浙公网安备 33010602011771号