温馨提示×

为什么linux要用yum

小樊
40
2026-09-03 16:09:08
栏目: 智能运维

简单说:Linux(尤其是 Red Hat 系发行版)用 yum,是为了更方便地管理软件包和依赖关系。

下面分层说明一下。


1. 没有包管理工具时会很痛苦

早期在 Linux 上装软件,常见流程是:

  1. 下载源码
  2. ./configure
  3. make
  4. make install

问题很多:

  • 软件依赖其他库,缺一个就编译失败
  • 不知道装了哪些文件
  • 卸载非常麻烦
  • 升级几乎靠重装

所以 Linux 引入了包管理系统


2. yum 是什么

yum = Yellowdog Updater, Modified

它是 Red Hat 系列 Linux(RHEL / CentOS / Fedora 早期) 使用的:

  • RPM 包管理前端
  • 自动解决依赖
  • 从软件仓库(repository)安装/更新/卸载软件

底层其实是:

RPM 负责装包,yum 负责找包和解决依赖


3. 为什么“要用 yum”而不是手动装 RPM

假设你执行:

rpm -ivh httpd.rpm

可能会提示:

error: Failed dependencies:
    libapr.so.0 is needed by httpd
    openssl >= 1.0.1 is needed by httpd

而用 yum:

yum install httpd

yum 会:

  • 自动从仓库找到 httpd
  • 自动装好 apr、openssl 等依赖
  • 记录安装信息,方便后续升级/卸载

4. yum 的主要作用

  • ✅ 自动解决依赖
  • ✅ 统一管理软件版本
  • ✅ 支持仓库(本地 / 网络)
  • ✅ 一键安装、升级、删除
  • ✅ 系统一致性更好

5. 为什么不是所有 Linux 都用 yum

不同 Linux 家族用不同工具:

发行版 包格式 包管理工具
RHEL / CentOS 6/7 RPM yum
CentOS 8+ / RHEL 8+ RPM dnf(yum 的继任者)
Debian / Ubuntu deb apt
Arch tar.xz pacman

所以:

不是“Linux 要用 yum”,而是“Red Hat 系 Linux 用 yum / dnf”


6. 现在还用 yum 吗

  • CentOS 7:常用 yum
  • CentOS 8 / Rocky / Alma / RHEL 8+:推荐 dnf
  • dnf 基本兼容 yum 命令
dnf install nginx

如果你愿意,我也可以:

  • 用一句话总结 yum 和 apt 的区别
  • 讲 yum 和 dnf 的关系
  • 或演示一次真实 yum 安装过程

0