df查看30GB的磁盘满了而du -sh查看磁盘占用只有6GB

发布时间 2023-07-19 10:39:54作者: 步孤天

背景

发现磁盘满了,是由rsyslogd打印的日志占的,手动rm -f /var/log/xxxx.log后,就没管了磁盘(30GB)占用率95%,过一段时间du -sh /一看,总共才(6GB),占用还是27GB。说明并没有被释放。

最终解决办法

lsof |grep "deleted"

发现rsyslogd也在其中,直接kill -9 rsyslogd, rsyslogd重启,磁盘得到释放。
又手动重启了"deleted"的php、mysql等服务,重启之后并没有释放多少磁盘.
看来此次占用磁盘不释放的罪魁祸首就是rsyslogd了。

可能原因

存在已经被删除了,但是还被运行中的进程打开的文件。这类文件会继续占用磁盘空间, 但是du 不会统计。

参考地址:

https://www.jianshu.com/p/6eff58447d78