Linux磁盘占用率与使用率不符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux磁盘占用率与使用率不符相关的知识,希望对你有一定的参考价值。

一、概述

一块磁盘50G挂在到/data目录下
df -h显示磁盘使用率已经达到90%、
去/data目录下执行du -sh显示10G
磁盘占用率和使用率不符

二、解决

在Linux上删除一个进程正在写入的文件的时候,虽然已经被我们删除了,但是只要进程还在,那个文件就不会真正被删除,只是被临时存放
到系统的某个地方,有点类似于Windows的回收站。通过lsof可以查看没有被真正删除的文件
lsof|grep delete
可以使用kill -9 将第二列进程号删除,对应的磁盘空间进行就会释放
将查询出来的redis相关的进程号kill以后,磁盘空间得到释放

在window系统上,如果想删除一个正在被进程使用的文件,系统会阻止删除操作。Linux也同理,不过Linux在删除时不会报错,会假装的让你
看到以为删除了,但文件被进程依然关联着并在写入,磁盘占用也还在。但通过du -h 扫不出来。所以无论在什么系统,不要尝试删除一个正
在被进程使用的文件


以上是关于Linux磁盘占用率与使用率不符的主要内容,如果未能解决你的问题,请参考以下文章

linux 磁盘删除文件后无法释放空间

一次磁盘占用率 100% 的排查记录

磁盘占用率100%怎么办

一次磁盘占用率 100% 的排查记录

一次磁盘占用率 100% 的排查记录

Linux shell磁盘监控