在 CentOS 系统中清理磁盘垃圾,可以从系统日志、缓存、旧内核、包管理器残留、无用文件等方面入手。下面按安全 → 进阶 → 危险的顺序给你一套实用方案。
先确认哪里占用最多:
df -h
查看目录占用:
du -h --max-depth=1 / | sort -hr
CentOS 7 / 8 常用:
# CentOS 7
yum clean all
# CentOS 8 / Stream
dnf clean all
清理缓存目录:
rm -rf /var/cache/yum/*
⚠️ 至少保留一个正在使用的内核
查看当前内核:
uname -r
查看已安装内核:
rpm -qa | grep kernel
删除旧内核(CentOS 7):
package-cleanup --oldkernels --count=1
CentOS 8:
dnf remove --oldinstallonly
查看日志大小:
journalctl --disk-usage
只保留最近 3 天:
journalctl --vacuum-time=3d
或限制大小:
journalctl --vacuum-size=200M
rm -rf /tmp/*
⚠️ 不要删除 /tmp 目录本身
rm -rf ~/.cache/*
find / -xdev -type f -size +500M
常见“垃圾大户”:
/var/log/var/lib/docker/home/*/Downloadsdocker system prune -a
package-cleanup --leaves
确认后删除:
package-cleanup --orphans
❌ 直接删除:
/var/lib/mysql/var/www/etc/usr❌ 使用 rm -rf / 或 rm -rf /*
#!/bin/bash
echo "Cleaning yum cache..."
yum clean all
echo "Cleaning journal logs..."
journalctl --vacuum-time=3d
echo "Cleaning tmp..."
rm -rf /tmp/*
echo "Done."
ncdu(可视化磁盘分析)yum install ncdu -y
ncdu /
如果你愿意,可以告诉我:
df -h 输出)我可以给你定制清理方案,避免误删重要数据。