Ⅰ、先搞清楚你的系统磁盘情况
df -h #查看磁盘整体使用情况(
如何找到内存占用大的目录?如何锁定问题所在?
以下目录作例子,不用在意/boot占用61%,boot下放的都是Linux内核相关的东西。大多数清理磁盘都在根目录或是/data目录。本次针对根目录作清理示范)
Ⅱ、怎么排查问题,思路是什么?
进入根目录
du -a | sort -rn | head -5 #排序查找出磁盘占用打的目录
发现usr目录占的最大,进去看看(
就像这样一级一级排查,直到找到你想清理的、你能清理的)
Ⅲ、哪些该清理,哪些不能清理?
像后缀.gz和.log和.tar都可以删除
一般清理磁盘指的是清理日志文件,删除日志文件之前必须根据你们系统的日志规则删除。
清除文件以后还要df-h再看一下空间变化,会发现没有变化,磁盘却没有任何减少。因为还需要释放已删除空间,可以通过kill -9 pid杀掉这些卡住的进程,达到释放空间的目的。
lsof -n | grep deleted #清理僵尸进程(
如果像这样,表示有很多删除文件的进程被锁住,需要先结束相应进程,从左至右第二列就是pid)
Ⅳ、其他相关命令
ls --full-time #查看当前各个子目录的最近修改时间
ll -h #查看当前目录下各个子目录所占内存(不包含子目录里面的内容)
du -sh * #查看当前目录下各个子目录所占内存(不包含子目录里面的内容)
sudo du -h --max-depth=1 / | sort -rh #找出文件夹中占用磁盘空间最大的文件。
netstat -antp |grep pid #查看某个进程的网络请求信息