linux tmp目录满了,却找不到占满磁盘文件的解决方法

最近,有几台线上服务器突然先后Nagios告警,/tmp目录使用率100%.

立即上/tmp目录查看哪些文件占了空间,使用du -sh命令查看/tmp文件占用情况,发现占用很小。

这是怎么回事呢?df -h命令明明显示  /tmp占满了。


使用 lsof /tmp命令查看文件打开情况,如下所示:



原来都被打开的文件占满了,而这些文件都是deleted状态。

看起来和puppet有关,puppet上次更新时间刚好为20130108.

但上次puppet更新完之后,只有部分进程有这个临时文件,部分进程是没有这个临时文件的。

通过一番推测,最后发现是用puppet脚本启动这些进程时,这些进程的启动脚本会往控制台输出大量日志信息。

这些日志信息最后写到了临时文件中,越积越多,最后占满了/tmp目录。


修改方法,就是将启动脚本中需要输出的信息输入到/dev/null中。


经验:任何脚本,不要随意往控制台输出信息。如果确实不需要这些信息,可以输入到/dev/null中


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值