温馨提示×

centos cleanup怎么释放空间

小樊
40
2026-08-19 04:09:02
栏目: 云计算

在 CentOS 系统中释放磁盘空间,可以从系统清理、日志清理、软件包清理、大文件查找几个方面入手。下面按安全 → 常用 → 进阶给你一套实用方案。


一、先确认磁盘使用情况

df -h

查看哪个分区快满了(通常是 //var)。

du -sh /* 2>/dev/null

查看根目录下各目录占用空间。


二、清理 YUM / DNF 缓存(最常用 ✅)

CentOS 7

yum clean all

CentOS 8 / Stream

dnf clean all

清理后一般能释放 几百 MB~几 GB


三、清理旧内核(非常有效 ✅)

CentOS 默认会保留多个内核。

查看当前内核

uname -r

查看已安装内核

rpm -qa | grep kernel

删除旧内核(保留当前)

package-cleanup --oldkernels --count=1

⚠️ 确保当前内核在列表中,不要误删


四、清理日志文件(/var/log)

查看日志大小

du -sh /var/log/*

清理 journal 日志

journalctl --vacuum-time=7d

或限制大小:

journalctl --vacuum-size=500M

清空大日志文件(不删文件)

truncate -s 0 /var/log/messages
truncate -s 0 /var/log/secure

五、清理 Docker(如果用 Docker)

docker system prune -a

只清理未使用镜像:

docker image prune -a

六、查找并删除大文件

查找大于 500MB 的文件

find / -xdev -size +500M -exec ls -lh {} \;

查找大于 1GB 的文件

find / -xdev -size +1G

⚠️ 确认后再删除


七、清理 /tmp 目录

rm -rf /tmp/*

或只清理 7 天前的:

find /tmp -type f -mtime +7 -delete

八、清理用户缓存

rm -rf ~/.cache/*

九、检查是否有被删除但未释放的文件

lsof | grep deleted

重启相关进程即可释放空间。


十、CentOS 7 已 EOL 的额外建议

如果你还在用 CentOS 7(已停止维护)

  • 建议迁移到 Rocky / Alma / CentOS Stream
  • 或至少关闭无用服务,减少日志增长

✅ 推荐一键清理组合

yum clean all
package-cleanup --oldkernels --count=1
journalctl --vacuum-time=7d
docker system prune -a

如果你愿意,可以贴一下:

df -h
du -sh /* 2>/dev/null

我可以帮你精准判断该清哪里,避免误删。

0