1. 什么是 YUM?

  • YUM 是 Linux 系统中一种基于 RPM 的软件包管理工具,广泛用于 CentOS、Red Hat、Fedora 等发行版
  • 它可以自动解决依赖关系,方便软件包的安装、更新、卸载和查询
  • 主要优势:简化了 RPM 包管理,支持仓库管理,自动下载安装所需依赖

2. YUM 的基本概念

名称说明
Repository(仓库)软件包的集中存放位置,YUM 从中下载软件
RPM 包Red Hat Package Manager 包格式
依赖关系软件包之间的依赖,YUM 自动解析
Cache(缓存)下载的软件包和元数据的本地存储

3. YUM 的核心命令

命令作用示例
yum install 软件包名安装软件包yum install vim
yum update 软件包名更新软件包yum update httpd
yum remove 软件包名卸载软件包yum remove nginx
yum search 关键词搜索软件包yum search mysql
yum info 软件包名查看软件包详细信息yum info python3
yum list installed查看已安装的软件包列表yum list installed
yum clean all清理缓存yum clean all
yum repolist列出可用的软件仓库yum repolist

4. YUM 安装(一般系统默认已安装)

  • CentOS、RedHat 默认内置 YUM,无需单独安装
  • 若意外未安装,可以使用 RPM 直接安装:
rpm -ivh yum-version.rpm
  • 或从镜像源下载并安装

5. 配置 YUM 仓库

  • YUM 仓库配置文件位于 /etc/yum.repos.d/ 目录,后缀 .repo
  • 典型仓库文件示例:
[base]
name=CentOS-$releasever - Base
baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
  • 你可以添加第三方仓库,如 EPEL、Remi、Nginx 等,丰富软件源

6. YUM 使用示例

# 安装 nginx
yum install nginx

# 更新系统所有软件包
yum update

# 卸载 httpd
yum remove httpd

# 搜索包含 mysql 的包
yum search mysql

# 查看已安装的包
yum list installed

# 清理缓存,释放空间
yum clean all

7. YUM 相关工具

  • DNF:是 Fedora 和最新版本 CentOS 推荐的替代 YUM 的包管理器,兼容性好,性能更优
  • RPM:底层包管理工具,YUM 是基于它做的更高级的封装

8. 注意事项

  • 执行安装、更新、卸载操作建议使用 root 权限
  • 遇到依赖冲突或仓库问题,可清理缓存或更新仓库缓存
  • 企业环境中可搭建私有 YUM 仓库,提升管理效率