清理YUM/DNF缓存
YUM(CentOS 7及以下)或DNF(CentOS 8及以上)是CentOS的包管理工具,安装软件时会缓存下载的包和元数据,占用/var/cache/yum或/var/cache/dnf目录空间。使用以下命令清理:
# CentOS 7及以下(YUM) sudo yum clean all # CentOS 8及以上(DNF) sudo dnf clean all 删除临时文件
系统临时文件存放在/tmp(临时文件,重启后可能被清除)和/var/tmp(长期临时文件)目录,可通过以下命令清理:
# 删除/tmp目录下所有文件(谨慎使用,避免删除正在使用的文件) sudo rm -rf /tmp/* # 删除/var/tmp目录下所有文件 sudo rm -rf /var/tmp/* # 更安全的做法:删除7天前的临时文件(避免误删) sudo find /tmp -type f -mtime +7 -exec rm -f {} \; sudo find /var/tmp -type f -mtime +7 -exec rm -f {} \; 清理日志文件
日志文件(如/var/log/messages、/var/log/secure)会随时间增长占用大量空间,可通过以下方式清理:
# 使用journalctl清理系统日志(删除7天前的日志) sudo journalctl --vacuum-time=7d # 手动清空特定日志文件(如messages、secure) sudo truncate -s 0 /var/log/messages sudo truncate -s 0 /var/log/secure # 使用logrotate工具(自动轮转日志,需提前配置) sudo logrotate -f /etc/logrotate.conf 清理无用软件包及旧内核
卸载不再需要的软件包,并清理旧内核以释放空间:
# 卸载指定软件包(如httpd) sudo yum remove httpd # CentOS 7及以下 sudo dnf remove httpd # CentOS 8及以上 # 自动删除无用依赖(不再被任何软件包需要的依赖) sudo yum autoremove # CentOS 7及以下 sudo dnf autoremove # CentOS 8及以上 # 清理旧内核(保留最近2个内核版本,避免系统无法启动) sudo package-cleanup --oldkernels --count=2 清理系统缓存
系统缓存(页面缓存、目录项缓存等)用于提升性能,但占用过多空间时可手动清理(清理后可能短暂影响性能,系统会自动重建):
# 同步磁盘数据(确保数据写入硬盘) sudo sync # 清理页面缓存、目录项缓存、inode缓存(最常用) echo 3 | sudo tee /proc/sys/vm/drop_caches 使用第三方工具(可选)
若需要图形化界面或更全面的清理,可使用bleachbit工具:
# 安装BleachBit sudo yum install bleachbit # 运行BleachBit(选择清理项目,如缓存、临时文件、日志) sudo bleachbit 注意事项
/home、/etc等关键目录,避免误删。rm -rf:该命令会强制删除文件,确保目标目录正确(如/tmp而非/)。