Skip to content

CentOS硬盘满了如何处理?

引言

今天刚登上我的云服务器控制台发现系统硬盘已经占满了(99%),瞬间懵逼了,我服务器上并没有什么大文件,只有一些博客的md文件。下面记录具体的排查思路:

步骤

在排查之前,我们需要学习几个相关的命令:

sh
top #top命令经常用来监控linux的系统状况,比如cpu、内存的使用,
free -m #看内存占用
df -h #看硬盘占用率

### 关键指令,主要是用这个命令排查
du -h --max-depth=1 / #查看哪个文件占用空间比较大  
du -h --max-depth=1 /home #指定进度文件比较大的空间   例如 /home

主要使用的就是du -h --max-depth=1命令,先从根目录/开始查看哪个目录内存占比最大,然后一层层查询下去,一般来说都是因为日志类文件*.log引起的,我们只需要执行rm -rf ./xxx.log删除即可,删除后日硬盘内存一下子释放了60%的内存,原来是因为我之前跑的一个jar包忘记关闭了,导致日志文件占满了内存。顺便粘上centos查询杀死端口命令。

sh
netstat -lnp|grep 8080   #8080请换为你的apache需要的端口

ps 1777    #1777就是上一步得到的pid

kill -9 [PID]  #-9 表示强迫进程立即停止

ps -ef|grep redis # 通过服务名称查询进程

WARNING

docker system prune命令会导致数据丢失,不能用!!!docker容器无需清理内存,一般清理宿主主机内存即可,用了这个命令导致了数据丢失,特此谨记。

上次更新于: