在 Ubuntu 系统上,其实通常不会用到 yum 和 dnf,因为 Ubuntu 使用的是 Debian 系的包管理系统,而不是 Red Hat 系。下面分点说明它们的关系和背景:
1. yum 和 dnf 是什么?
- yum(Yellowdog Updater, Modified)
- 早期 Red Hat 系列(如 CentOS 6/7、RHEL 5/6)使用的包管理器
- 基于 Python,依赖
rpm
- dnf(Dandified YUM)
- yum 的下一代替代品
- 从 CentOS 8 / RHEL 8 开始,默认用 dnf
- 性能更好、依赖解析更强
✅ 简单关系:
dnf 是 yum 的升级版,功能兼容 yum 命令
2. Ubuntu 和 yum / dnf 的关系
- Ubuntu 属于 Debian 系
- 默认包管理器是:
dpkg(底层)
apt / apt-get(上层)
- ❌ Ubuntu 默认不支持 yum / dnf
- 如果你在 Ubuntu 上看到 yum/dnf:
- 可能是:
- 手动安装了(很少见)
- 在容器或 WSL 里跑的是 CentOS/RHEL 镜像
- 教程混淆了系统
3. 对应关系(便于理解)
| 系统类型 |
底层 |
上层包管理器 |
| Ubuntu / Debian |
dpkg |
apt |
| CentOS 6/7 |
rpm |
yum |
| CentOS 8+ / RHEL 8+ |
rpm |
dnf |
4. 常见误区
❌ “Ubuntu 用 yum 安装软件”
✅ 正确:Ubuntu 用 apt install
❌ “dnf 比 apt 好”
✅ 不同生态,不能简单比较
如果你是想:
- 在 Ubuntu 上装某个软件
- 或 从 CentOS 转到 Ubuntu
- 或 在 Ubuntu 里跑 yum/dnf 容器
可以告诉我具体场景,我可以给你更准确的命令或方案。