清理包管理器缓存
CentOS的包管理器(YUM/DNF)会缓存下载的RPM包及元数据,定期清理可释放磁盘空间。对于CentOS 7及以下版本,使用sudo yum clean all命令清理YUM缓存(包括元数据、已下载包等);对于CentOS 8及以上版本,使用sudo dnf clean all命令清理DNF缓存(功能与YUM类似)。若需清理特定类型的缓存,可使用sudo yum clean metadata(清理元数据)或sudo dnf clean packages(清理已下载包)。
删除无依赖关系的软件包
卸载软件后,系统可能保留不再被任何程序依赖的孤立依赖包,这些包会占用空间且无用。使用sudo yum autoremove(CentOS 7及以下)或sudo dnf autoremove(CentOS 8及以上)命令,自动检测并删除这些无用依赖包。
清理旧内核版本
CentOS会保留旧版本内核以确保系统兼容性,但过多旧内核会占用大量磁盘空间。使用package-cleanup --oldkernels --count=2命令(需安装yum-utils包,sudo yum install yum-utils),保留最新的2个内核版本,删除其余旧内核。
查找并清理大残留文件
通过磁盘分析工具定位占用空间大的残留文件,再针对性删除。常用工具及方法:
sudo yum install ncdu)运行ncdu /,可直观查看各目录占用空间,选中文件/目录按d键删除;sudo find / -type f -size +100M -exec ls -lh {} \;,确认文件用途后删除无用文件。清理临时文件
临时文件(如/tmp、/var/tmp目录下的文件)通常无长期保存价值,定期清理可释放空间。
sudo rm -rf /tmp/*(删除/tmp目录下所有文件)和sudo rm -rf /var/tmp/*(删除/var/tmp目录下所有文件);crontab -e添加定时任务,例如每天凌晨3点清理,添加0 3 * * * root rm -rf /tmp/*和0 3 * * * root rm -rf /var/tmp/*;sudo systemd-tmpfiles --clean可根据系统配置自动清理临时文件。清理系统及应用日志
日志文件(如/var/log目录下的文件)会随时间增长占用大量空间,需定期管理。
sudo logrotate /etc/logrotate.conf手动触发轮转(通常由cron每日自动执行),将旧日志压缩归档;sudo find /var/log/httpd -type f -name "*.log" -mtime +7 -exec rm -f {} \;;清空系统日志,使用sudo journalctl --vacuum-time=2weeks(删除2周前的日志)或sudo journalctl --vacuum-size=100M(限制日志文件大小为100MB)。手动清理残留配置文件
软件卸载后,可能残留配置文件(如/etc、/usr/local目录下的文件)。可通过以下方式查找并清理:
rpm -qa | grep 'rc'(针对RPM包管理);sudo rm -rf /etc/package_name(替换package_name为实际软件名)或sudo find / -name "*package_name*" -exec rm -rf {} \;(谨慎使用,避免误删系统文件)。使用第三方工具辅助清理
若需更便捷的清理,可使用第三方工具(如BleachBit),其提供图形界面,支持清理缓存、日志、临时文件等多种类型残留。安装及使用方法:sudo yum install bleachbit,运行sudo bleachbit,选择需清理的项目即可。
注意事项
/home目录、数据库文件),避免误删导致数据丢失;rm -rf命令会递归强制删除,使用时需确认目标路径,避免删除系统关键文件(如/etc、/bin等);