您现在的位置是:网站首页> 编程资料编程资料
Linux磁盘空间被未知资源耗尽的解决方法_linux shell_
2023-05-26
1336人已围观
简介 Linux磁盘空间被未知资源耗尽的解决方法_linux shell_
在linux中,当我们使用rm在linux上删除了大文件,但是如果有进程打开了这个大文件,却没有关闭这个文件的句柄,那么linux内核还是不会释放这个文件的磁盘空间,最后造成磁盘空间占用100%,整个系统无法正常运行。这种情况下,通过df和du命令查找的磁盘空间,两者是无法匹配的,可能df显示磁盘100%,而du查找目录的磁盘容量占用却很小。
遇到这种情况,基本可以断定是某些大文件被某些程序占用了,并且这些大文件已经被删除了,但是对应的文件句柄没有被某些程序关闭,造成内核无法回收这些文件占用的空间。
那么,如何查找那些文件被某些程序占用呢,命令如下
lsof -n | grep deleted COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME dd 31708 higkoo 1w REG 8,2 5523705856 429590 /data/filetest (deleted)
命令打lsof -n | grep deleted印出所有针对已删除文件的读写操作,这类操作是无效的,也正是磁盘空间莫名消失的根本原因
备注:本人遇到的场景是同事删除了mysql的表,但是是在shell上执行rm表的文件,而不是通过drop table之类的命令去删除表的,于是mysql会一直占用这些表文件的句柄,最后造成磁盘空间100%,这种情况下,也不用重启mysql,只要进入mysql客户端执行flush tables就行了。
以上这篇Linux磁盘空间被未知资源耗尽的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
您可能感兴趣的文章:
相关内容
- 解决VirtualBox中Ubuntu 14.04屏幕分辨率不能设置的问题_linux shell_
- 浅谈Vim中的Tab与空格缩进_linux shell_
- 详解Linux Shell 实现一个获取任意位数的随机密码的脚本_linux shell_
- 详解Shell 命令行批量处理图片文件名的实例_linux shell_
- ubuntu中root和普通用户切换方法(推荐)_linux shell_
- Linux查看端口占用lsof -i:port的方法_linux shell_
- 浅析Linux中重定向问题_linux shell_
- Linux下利用Opencv打开笔记本摄像头问题_linux shell_
- Linux中 sed 和 awk的用法详解_linux shell_
- 提高你工作效率的shell命令总结大全_linux shell_
