一、清理临时文件
临时文件是系统垃圾的主要来源之一,通常存储在/tmp、/var/tmp及用户目录的.cache、.local/share/Trash中。
sudo rm -rf /tmp/*清除/tmp目录下的所有临时文件(系统重启后会重新创建);同理,sudo rm -rf /var/tmp/*清理/var/tmp目录。rm -rf ~/.cache/*删除当前用户的缓存文件,rm -rf ~/.local/share/Trash/*清空回收站中的文件。systemd-tmpfiles工具设置定时规则(如编辑/etc/tmpfiles.d/cleanup.conf添加w /tmp 1777 root root -,表示每周清理/tmp),或添加cron任务(如0 3 * * * root rm -rf /tmp/*,每天凌晨3点执行)。二、清理包管理器缓存
包管理器(yum/dnf)下载的RPM包和元数据会占用大量磁盘空间,需定期清理。
sudo yum clean all命令清理所有缓存(包括已下载的RPM包、元数据);也可单独清理元数据(sudo yum clean metadata)或RPM包(sudo yum clean packages)。sudo dnf clean all命令,功能与yum类似,覆盖所有缓存类型。三、清理日志文件
日志文件(如/var/log/messages、/var/log/secure)会随时间增长占用大量空间,需合理清理。
sudo journalctl --vacuum-time=2weeks删除两周前的日志;sudo journalctl --vacuum-size=100M将日志限制在100MB以内。sudo rm -f /var/log/messages(系统消息日志)、sudo rm -f /var/log/secure(认证日志)等,操作前需确认日志无重要信息。logrotate工具(默认已安装)自动压缩、删除旧日志,编辑/etc/logrotate.conf调整轮转策略(如保留7天日志)。四、清理无用软件包及依赖
卸载软件后,残留的无用依赖会占用空间,需自动检测并清理。
sudo yum list installed(CentOS 7)或sudo dnf list installed(CentOS 8+),查看不需要保留的软件。sudo yum remove package_name(如sudo yum remove firefox)或sudo dnf remove package_name。sudo yum autoremove(CentOS 7)或sudo dnf autoremove(CentOS 8+),删除不再被任何软件依赖的无用包。五、清理旧内核
旧内核版本会占用磁盘空间,且不会自动删除,需手动清理。
rpm -q kernel,显示所有已安装的内核版本(当前使用的内核不会被列出)。sudo yum remove kernel-version(如sudo yum remove kernel-3.10.0-1160.el7.x86_64);或使用package-cleanup工具(需安装yum-utils):sudo package-cleanup --oldkernels --count=2,保留最近2个内核版本。六、查找并清理大文件/目录
使用工具快速定位占用空间大的文件或目录,针对性清理。
sudo yum install ncdu(CentOS 7)或sudo dnf install ncdu(CentOS 8+),运行sudo ncdu /扫描根目录,通过界面查看大文件/目录,按d键删除。sudo find / -type f -size +100M -exec ls -lh {} \;查找大于100MB的文件,sudo find / -type f -size +500M -exec rm -f {} \;删除大于500MB的文件(操作前需确认文件用途)。七、清理Docker日志(若有Docker服务)
Docker容器的日志文件会快速增长,需定期清理。
docker ps获取容器ID,sudo truncate -s 0 /var/lib/docker/containers/container_id/container_id-json.log清空指定容器日志。sudo find /var/lib/docker/containers/ -name "*.log" -exec truncate -s 0 {} \;清空所有容器日志。注意事项
/home、/etc等关键目录,防止误删。/usr、/bin)操作。