首页 > 技术文章 > 根目录/空间利用率百分百,怎么删除文件都不管用

eos666 2019-08-26 14:05 原文

 lsof 命令用法:查看已删除空间却没有释放的进程

查看已经删除的文件,空间有没有释放,没有的话kill掉pid

lsof -n |grep deleted

lsof简介lsof(list open files)是一个列出当前系统打开文件的工具。

问题描述:
服务报警根分区使用率超过99%,上来查看发现99%使用率;

 

但是/分区下面的目录,每个查询加起来也不到7G空间,多出来的23G不知道在哪里?
find查询也没有找到大文件;

分析原因:
可能是系统进程占用的空间没有释放掉,导致的;
通过命令查看发现,大量的 auditd 、initial-s、cupsd、tuned、httpd、rsyslogd、easyAgent、collector、easy_coll 进程,都是处于deleted状态,文件大小刚好是23G,正好是多出来的空间,找到问题所在;

 解决办法:

找到对应的进程号,kill掉即可;

lsof | grep deleted |awk '{print$2}' >> /tmp/pid-del.txt

while read line; do echo $line; kill -9 $line; done</tmp/pid-del.txt

查看空间已经恢复:

 

推荐阅读