通俗来说,yum 和 dnf 都是 CentOS 系统里的“软件管家”或“应用商店”。
它们存在的唯一核心目的,就是帮你自动解决“安装软件”这件事——包括找软件、下载软件、自动安装依赖包,以及后续的卸载和更新。
在 CentOS 系统中,它们的关系类似于“老款发动机”和“新款涡轮增压发动机”——操作逻辑几乎一样,但底层的实现和技术架构完全不同。
| 操作系统 | 该用什么 | 实际情况 |
|---|---|---|
| CentOS 7 | 只能用 yum | CentOS 7 默认只有 yum,系统未内置 dnf(强行安装可能破坏系统,不建议) |
| CentOS 8 / Rocky Linux 8+ / AlmaLinux 8+ | 直接用 dnf 更优 | 虽然这些系统输入 yum 命令也能用(因为 yum 被软链接指向了 dnf),但输入 dnf 调用的是原生的高性能引擎。 |
| 操作目的 | yum 写法 | dnf 写法 |
|---|---|---|
| 安装软件 | yum install nginx | dnf install nginx |
| 更新所有包 | yum update | dnf upgrade/dnf update |
| 搜索软件 | yum search python | dnf search python |
| 查看历史操作 | yum history | dnf history(输出信息比 yum 更详细清晰) |
| 安装软件组 | yum groupinstall "Development Tools" | dnf group install "Development Tools" |