阅读量:2
CentOS软件包清理技巧
一 基础清理流程
- 清理包管理器缓存:优先执行,释放下载的包与元数据,命令为:sudo yum clean all(CentOS 7/8 Stream 使用 YUM),或 sudo dnf clean all(CentOS 8/9 使用 DNF)。必要时可细化为仅清元数据或过期缓存:sudo yum clean metadata、sudo yum clean expire-cache。
- 卸载不再需要的软件包:先列出已装包 sudo yum list installed,对确定无用的包执行 sudo yum remove
;为避免残留依赖,随后执行 sudo yum autoremove(DNF 同样支持)。 - 删除孤立/叶子包:识别并清理长期无人依赖的包,减少系统“赘肉”,命令为:package-cleanup --quiet --leaves --exclude-bin | xargs yum remove -y(按需多次执行直至无输出)。
二 深度清理与空间回收
- 清理旧内核:保留最新的 1–2 个内核即可,避免 /boot 分区被占满,命令为:sudo package-cleanup --oldkernels --count=1(保留 1 个)或 –count=2(保留 2 个)。
- 清理日志与临时文件:
- 系统日志:按时间保留,如 sudo journalctl --vacuum-time=3d(保留近 3 天);
- 传统日志:清理大文件与过期文件,如 find /var/log -type f -size +100M -exec rm -f {} ;,或按时间删除 find /var/log -type f -name “*.log” -mtime +30 -exec rm -f {} ;;
- 临时目录:sudo rm -rf /tmp/ /var/tmp/*(执行前确认无关键进程在使用)。
- 查找并清理大文件:快速定位占用空间最大的路径,命令为:du -sh / | sort -hr | head -n 10*;也可用 ncdu 交互式分析:sudo yum/dnf install ncdu && sudo ncdu /。
- 删除残留仓库配置:不再使用的源会拖慢解析与更新,建议移除 /etc/yum.repos.d/ 下对应的 .repo 文件。
三 安全与自动化建议
- 变更前务必备份重要数据与关键配置,避免误删导致业务中断。
- 谨慎使用通配删除(如 rm -rf /var/log/*),优先采用按时间/大小条件清理,减少对正在运行服务的影响。
- 将常用清理动作脚本化并定期执行(如每周清理缓存、每月清理旧日志),同时保留至少 1–2 个可用内核与最近一次更新的回滚点。
- 清理后使用 df -h 与 package-cleanup --orphans(如可用)复核空间与依赖状态,确保系统稳定。
四 版本差异与常用命令对照
| 操作 | CentOS 7/8 Stream(YUM) | CentOS 8/9(DNF) |
|---|---|---|
| 清理缓存 | sudo yum clean all | sudo dnf clean all |
| 卸载软件包 | sudo yum remove |
sudo dnf remove |
| 自动删除无用依赖 | sudo yum autoremove | sudo dnf autoremove |
| 清理旧内核 | sudo package-cleanup --oldkernels --count=N | sudo package-cleanup --oldkernels --count=N |
说明:上表命令覆盖了日常清理的高频场景;package-cleanup 来自 yum-utils,如未安装可先执行 sudo yum/dnf install yum-utils。
以上就是关于“CentOS软件包清理技巧”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm