linux rm后文件放哪里,Linux解决rm 删除大文件后 磁盘空间无法释放的问题

Linux解决rm 删除大文件后 磁盘空间无法释放的问题

在Linux中,当我们使用rm在linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄,那么linux内核还是不会释放这个文件的磁盘空间,最后造成磁盘空间占用100%,整个系统无法正常运行。这种情况下,通过df和du命令查找的磁盘空间,两者是无法匹配的,可能df显示磁盘100%,而du查找目录的磁盘容量占用却很小。

遇到这种情况,基本可以断定是某些大文件被某些程序占用了,并且这些大文件已经被删除了,但是对应的文件句柄没有被某些程序关闭,造成内核无法收回这些文件占用的空间。

查找出那些已经删除但是继续占用内存空间的文件:

lsof -n | grep deleted

或者直接查找删除的大文件

lsof -n | grep deleted |grep debug

rsyslogd    5154 root    7w      REG                8,3 94263283712    6030228 /var/log/debug.log (deleted)

关掉或者重启占用这些文件的应用程序就可以释放磁盘空间了

/etc/init.d/rsyslogd restart

你可能感兴趣的:(linux,rm后文件放哪里)