在 CentOS 上清理并释放磁盘空间,可以按下面几个方向来做(从最安全、最常用到进阶清理)。
df -h
du -sh /* 2>/dev/null
找出占用空间最多的目录,例如:
du -sh /var/* 2>/dev/null
yum clean all
# 或 CentOS 8+
dnf clean all
清理旧内核(保留当前和上一个):
package-cleanup --oldkernels --count=2
du -sh /var/log/*
> /var/log/messages
> /var/log/secure
journalctl --vacuum-size=100M
# 或按时间
journalctl --vacuum-time=7d
docker system prune -a
docker volume prune
rm -rf /tmp/*
rm -rf /var/tmp/*
find / -name "core" -size +100M 2>/dev/null
find / -type f -size +500M 2>/dev/null
lsof | grep deleted
重启对应进程即可释放空间。
| 位置 | 说明 |
|---|---|
| /var/log | 日志 |
| /var/cache/yum | 包缓存 |
| /var/lib/docker | Docker |
| /home | 用户文件 |
| 被删除但未释放的文件 | lsof |
如果你愿意,可以贴一下:
df -h
du -sh /* 2>/dev/null
我可以帮你精准分析该删哪里。