大家在日常工作的,竟然遇到清理磁盘的工作的,不知道大家遇到过这种情况当删除某个大文件的时候你在查看磁盘大小的时候依然还是没变?

为什么会出现这种情况呢?

Linux系统中,通过rm删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(也就是说有一个进程正在使用该文件),那么进程将仍然可以读取该文件,磁盘空间也一直被占用,所以我们看到磁盘空间没变。

解决方法:

首先查看你所删除的文件列表:

lsof | grep delete


1:找到对应你删除的文件的列表,杀死对应的进程

nginx 11962 root txt REG 8,1 7574096 4988532 /usr/local/nginx/proxy_temp/7/06/0000000067(deleted)

如上所示: 我们删除的是nginx的文件未被释放。

一种是:直接kill掉该进程,但是这种方法有的时候会出现一些问题,不提倡。

另一种:重启nginx(应用)即可释放磁盘空间。