一、概述

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

二、解决

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

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