yum (Yellowdog Updater, Modified) 是一个强大的包管理器,它能够从指定的软件仓库中自动下载、安装、更新和卸载软件包,并自动处理依赖关系。

核心安装命令
最基本、最常用的安装命令只有一个:
sudo yum install <软件包名>
示例:
安装 wget 这个工具。
sudo yum install wget
命令解释:
sudo: 以超级用户(root)权限执行,因为安装软件通常需要写入系统目录,普通用户没有这个权限。yum: 命令本身。install:yum的子命令,表示要执行“安装”操作。wget: 你想要安装的软件包的名称。
常用选项和场景
除了基本的安装,yum 还有很多实用的选项,可以满足不同的需求。

安装特定版本的软件包
有时你可能需要安装一个旧版本的软件包来兼容其他程序。
sudo yum install <软件包名>-<版本号>
示例:
安装 nginx 的 18 版本。
sudo yum install nginx-1.18
不检查 GPG 密钥直接安装
为了确保软件包的完整性和安全性,yum 默认会验证 GPG 签名,如果仓库的 GPG 密钥没有导入,安装会失败,如果你信任该源,可以使用 --nogpgcheck 选项跳过检查。
sudo yum install --nogpgcheck <软件包名>
警告: 此操作存在安全风险,请仅在完全信任软件源时使用。

显示将要安装的软件包及其依赖关系
在真正执行安装之前,你可以先预览一下 yum 计划做什么,包括安装哪些包、卸载哪些包以及更新哪些包。
sudo yum install <软件包名> -y
注意: -y 选项表示对所有提示都回答“是”(Yes),如果你想先看一遍,不要加 -y,yum 会列出所有变更并询问你是否继续。
# 不加 -y,会先询问 sudo install <软件包名> # 加上 -y,会自动确认并执行 sudo yum install <软件包名> -y
从本地文件安装 RPM 包
如果你已经下载了 .rpm 文件到本地,可以使用以下命令安装。yum 会自动处理这个包的依赖关系。
sudo yum localinstall <本地文件名>.rpm
示例:
sudo yum localinstall google-chrome-stable_current_x86_64.rpm
yum 常用相关命令
为了让你更全面地理解 yum 的生态系统,这里列出一些与安装紧密相关的其他常用命令。
| 命令 | 功能描述 | 示例 |
|---|---|---|
yum search <关键词> |
在所有可用的软件仓库中搜索包含关键词的软件包。 | yum search image editor |
yum list installed |
列出系统中所有已经安装的软件包。 | yum list installed \| grep nginx |
yum list available |
列出所有可用但尚未安装的软件包。 | yum list available \| grep nginx |
yum update |
更新系统中所有已安装的软件包到最新版本。 | sudo yum update -y |
yum update <软件包名> |
更新指定的软件包到最新版本。 | sudo yum update nginx -y |
yum remove <软件包名> |
卸载指定的软件包。 | sudo yum remove nginx |
yum history list |
查看 yum 的操作历史记录。 |
yum history list |
yum history undo <ID> |
撤销指定的历史操作(卸载后可以撤销回安装状态)。 | yum history undo 5 |
yum clean all |
清理 yum 缓存,释放磁盘空间。 |
sudo yum clean all |
yum repolist |
显示已配置并启用的软件仓库列表。 | sudo yum repolist |
一个完整的安装工作流
假设你想安装一个名为 htop 的系统监控工具,可以按照以下步骤操作:
-
搜索软件包(可选,确认包名)
yum search htop
输出会显示
htop.x86_64等信息,确认包名正确。 -
安装软件包
sudo yum install htop -y
-y会让yum自动回答所有问题,直接开始下载和安装。 -
验证安装 安装完成后,直接在命令行输入
htop并回车。htop
如果能看到一个彩色的、交互式的进程列表,说明安装成功。
-
卸载软件包(如果不再需要)
sudo yum remove htop
重要提示:从 yum 迁移到 dnf
从 Fedora 22 和 CentOS 8 开始,yum 已经被其下一代继任者 dnf (Dandified Yum) 所取代。
dnf的命令语法与yum几乎完全一样,你在上面学到的所有yum命令,都可以直接用在dnf上。dnf在性能、依赖解析、插件机制等方面都比yum更优秀。
如果你使用的是较新的系统(如 CentOS 8/Stream, Fedora 23+, RHEL 8+, Rocky Linux 8+, AlmaLinux 8+),你的系统中可能已经没有 yum 命令了,或者它只是一个指向 dnf 的符号链接,你可以直接使用 dnf。
# 在新系统中,推荐使用 dnf sudo dnf install <软件包名>
希望这份详细的指南能帮助你熟练掌握 yum(和 dnf)的安装命令!
