/usr 目录已满,但只能占 1/8 的空间

/usr 目录已满,但只能占 1/8 的空间

无法找到导致我的服务器上出现空间问题的文件。运行“df -h”命令会导致:

/dev/xvda1           ext3   4.0G  693M  3.3G  18% /
/dev/mapper/vg00-usr ext4   8.9G  8.9G     0 100% /usr
/dev/mapper/vg00-var ext4    73G   45G   25G  65% /var

但是,当我 cd 到 /user 并运行“du -sh”时,它只显示使用了 1.3G。这些文件是否可能存储在其他地方,或者可能没有显示出来?这是在装有 Plesk 的 Centos 服务器上

答案1

您可以运行lsof|grep delete(以 root 或 sudo 身份),它将显示所有已删除的文件。您可能有由进程打开然后删除的文件,但该进程仍在运行并持有该文件的句柄。

例如,如果您正在清理空间并删除正在使用的日志文件,但程序仍在运行并写入该文件,则可能会发生这种情况。

如果是这种情况,您必须停止正在运行的具有打开句柄的程序(lsof 也会告诉您这一点),然后它会释放空间。

只有在文件的所有句柄都消失后才会释放空间。这是一些程序对临时文件使用的技巧;它们打开一个文件然后删除它,因此一般来说人们无法读取临时文件,如果程序退出或因某种原因死亡,则文件会自动删除。

相关内容