首页 > 系统服务 > 详细

linux 磁盘空间被占满但找不到目标文件的问题处理 lsof命令

时间:2019-09-01 12:39:33      阅读:97      评论:0      收藏:0      [点我收藏+]

今天,上午收到zabbix 报警。

报警内容:一台服务器,磁盘满了。

故障排查步骤:

之前磁盘满了,一般都是由于服务器上面再跑的服务日志引起的占用太多空间,服务器上有java程序,去删除多余的日志就可以了。但是我记得这台服务器我是做过日志自动清理机制的。

因此登录服务器,df -h 发现磁盘91% , df -i  索引正常。 

 

我首先想到是不是日志清理出问题了,去每个服务下面log查看发现正常,日志量只有几百兆。

于是使用du找下大文件,于是在根目录下,看下各个目录的磁盘占用情况。

du -sh /

出来的结果是一共使用了6G多,没有一个目录有大文件的。

 这就很奇怪了,查看剩余空间和已用空间数据对不上,还相差40多个G。

于是,百度了下,原来有的文件可能删除了,但是并没有被释放,就像进入回收站一样,于是用lsof命令查看那些删除了但是还打开着文件句柄的文件,并按照大小顺序排列。

 

lsof | grep deleted | sort -nr

 

结果发现有一个java日志文件,有40多G,状态为删除,但是文件句柄仍然被打开了。还在不停的写入数据,

 

于是群里面找到开发,让帮忙重启服务,再df -h,空间瞬间空闲了40多个G。

 

linux 磁盘空间被占满但找不到目标文件的问题处理 lsof命令

原文:https://www.cnblogs.com/jim-xu/p/11441762.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!