找到系统盘被打满文件
1.找系统盘大文件
命令 sudo find / -xdev -type f -size +500M -exec ls -lh '{}' \;
系统盘被打暴了,最直观的感觉是是不是有什么超大文件在系统盘。这个命令可以帮你找到系统盘下大于 500M 的所有文件并列出来,-xdev 这个参数很重要,它告诉 find 不要找挂载了其它文件系统的目录即只找系统盘下的大文件。
2.找已删除但未释放的文件
命令 sudo lsof | awk '$0 ~ /deleted/ && $7 > 1000000000 {print}'
lsof 命令可以列出当前所有进程打开的所有文件及其文件大小,并对已经删除的文件添加一个 deleted 标记。这个比较隐蔽,文件本身已经被删除了,但是仍然有进程在使用它,导致它所占用的磁盘空间始终得不到释放,并且进程可能还在往里写数据,导致文件越来越大。平时处理系统盘满时经常发现几十个G 大小的这种文件。
muahao@aliyun.com