Linux命令-yumRPM 包管理工具 命令简介 语法格式⚙️ 常用选项与子命令全局选项 实战示例1. 软件包安装2. 搜索与查询3. 更新系统与软件包4. 卸载软件包5. 仓库管理6. yum 历史管理7. 依赖分析8. 高级用法⚠️ 危险操作与注意事项 相关命令 总结快速参考yumYellowdog Updater Modified是RHEL/CentOS 系统的包管理工具用于自动解决依赖关系并安装 RPM 软件包。在 CentOS 8/RHEL 8 中已被dnf替代但存量系统仍广泛使用。 命令简介yum基于 RPM 包管理从配置的软件仓库repository中下载并安装软件包自动处理依赖关系是 CentOS/RHEL 日常运维的核心命令。版本说明RHEL 7/CentOS 7 使用yumRHEL 8/CentOS 8 使用dnfDandified YUM。dnf语法与yum高度兼容大部分系统上yum命令实际上是dnf的别名。核心概念概念说明仓库(repo)软件包的远程或本地存储位置RPM 包.rpm格式的二进制软件包依赖解析自动计算并安装所需的依赖包yum 缓存本地缓存的仓库元数据和 RPM 包 语法格式yum[选项]子命令[包名...]# 安装软件包yuminstall包名# 搜索软件包yum search 关键字# 更新系统/软件包yum update[包名]# 删除软件包yum remove 包名⚙️ 常用选项与子命令子命令说明install安装一个或多个软件包remove/erase卸载软件包update更新已安装的软件包upgrade更新软件包会处理过时依赖search在包名和描述中搜索关键字info显示软件包详细信息list列出可用或已安装的软件包provides查找提供指定文件的软件包clean清理 yum 缓存makecache生成/更新缓存repolist列出已配置的仓库history查看/管理 yum 操作历史check-update检查可用更新reinstall重新安装软件包downgrade降级软件包deplist显示软件包的依赖关系全局选项选项说明-y对所有确认提示自动回答 yes-q安静模式减少输出-v详细模式--nogpgcheck跳过 GPG 签名验证--enablerepo仓库临时启用指定仓库--disablerepo仓库临时禁用指定仓库--downloadonly仅下载不安装--downloaddir目录指定下载目录 实战示例1. 软件包安装# 安装单个软件包yuminstallnginx# 安装多个软件包批量安装 LNMPyuminstallnginx mysql-server php-fpm php-mysql# 自动确认安装非交互模式适合脚本yuminstall-ygitvimwgetcurl# 安装本地 RPM 文件自动处理依赖yum localinstall ./custom-package.rpm# 从指定仓库安装yum--enablerepoepelinstallhtop# 安装开发工具组yum groupinstallDevelopment Tools2. 搜索与查询# 搜索包含 python 的软件包yum search python3# 查看软件包详细信息yum info nginx# 列出所有已安装的软件包yum list installed# 列出所有可用未安装的软件包yum list available# 列出所有软件包已安装 可用yum list all# 查看某个包的已安装版本yum list installed|grepkernel# 查找哪个包提供了 /usr/bin/ssh 文件yum provides /usr/bin/ssh# 按通配符搜索yum listphp-*3. 更新系统与软件包# 更新所有软件包包括内核yum update# 仅更新安全补丁yum update--security# 更新单个软件包yum update nginx# 检查有哪些可用更新yum check-update# 仅下载更新但不安装便于离线部署yum update--downloadonly--downloaddir/tmp/updates# 更新到指定版本锁定版本yum update-to nginx-1.20.14. 卸载软件包# 卸载单个软件包yum remove nginx# 卸载多个软件包yum remove httpd php php-mysql# 自动确认卸载yum remove-ydocker# 卸载软件包及其未被其他包使用的依赖yum autoremove nginx5. 仓库管理# 列出所有已配置的仓库yum repolist# 列出所有仓库含禁用的yum repolist all# 查看仓库详细信息yum repoinfo# 生成/更新仓库元数据缓存yum makecache# 清理所有缓存文件yum clean all# 仅清理软件包缓存yum clean packages# 仅清理元数据缓存yum clean metadata6. yum 历史管理# 查看 yum 操作历史yumhistory# 查看指定历史条目的详细信息yumhistoryinfo10# 撤销某次操作回滚到指定事务之前yumhistoryundo10# 重做某次操作yumhistoryredo10# 列出涉及某软件包的历史操作yumhistorylist nginx7. 依赖分析# 查看软件包的依赖关系yum deplist nginx# 查看哪些包依赖指定软件包yum deplist--reversenginx# 显示包的已安装依赖和缺失依赖yum check-dependencies8. 高级用法# 安装 EPEL 仓库Extra Packages for Enterprise Linuxyuminstallepel-release# 查看特定仓库中的软件包yum--disablerepo*--enablerepoepel list available# 仅下载不安装用于离线环境部署yuminstall--downloadonly--downloaddir/tmp/rpmsdocker# 忽略特定依赖安装危险仅限特殊场景yuminstall--skip-broken package-name# 从特定源安装排除某些仓库yuminstall--disablerepobase--enablerepoepelhtop⚠️ 危险操作与注意事项⚠️危险警告以下操作可能导致系统不稳定或软件包损坏。# 危险强制删除内核可能导致系统无法启动yum remove kernel# 回滚方案保留至少两个内核版本# 安装回内核yum install kernel# 危险跳过依赖安装yuminstall--skip-broken broken-package# 回滚方案记录安装的包使用 yum history undo 回滚# 危险在无网络环境中执行 updateyum update# 回滚方案使用 yum history undo 撤销# 建议先执行 yum check-update 预览变更安全操作建议生产环境更新前先yum check-update预览变更关键服务器禁止自动更新手动审查后分批执行使用yum history追踪每次变更以便快速回滚配置yum-cron仅下载更新不自动安装CentOS 7 EOL 后迁移到 Rocky Linux 或 AlmaLinux 相关命令命令关系与说明dnfyum 的下一代替代品RHEL 8 默认rpm底层 RPM 包管理器直接操作 RPM 文件yumdownloader仅下载 RPM 包不安装yum-utils 提供yum-config-manager管理 yum 仓库配置yum-utils 提供yum-cronyum 自动更新定时任务repoquery查询仓库中的软件包信息yum-utils 提供createrepo创建自定义 yum 仓库aptDebian/Ubuntu 系统的包管理工具 总结yum是 CentOS/RHEL 生态的核心包管理工具。掌握install、search、update、remove、history五个子命令即可覆盖日常运维 90% 的场景。对于新版系统RHEL 8/CentOS 8建议学习dnf使其平滑过渡。运维建议始终在变更前查看yum history了解历史操作在升级前使用yum check-update预览并通过yum history undo在出问题时快速回滚。