【Linux】用 YUM 管理软件包(yum)

摘要

本文探讨如何在 Linux 中用 YUM 来管理系统中的软件。

引言

为解决 rpm 安装包时的依赖问题,提出了 yum 解决方案。yum 是 yellowdog updater modified 的缩写,昵称黄狗更新器,是红帽系统 Linux 中的一个软件。它够自动查找并解决 rpm 包之间的依赖关系,无需用户逐个手动地区安装或卸载每一个 rpm 软件包。几乎所有红帽系统的 Linux 系统中,均会默认安装 yum。特别需要提到的是,yum 只是为了解决 rpm 依赖关系的一个工具,而不是一种软件封装模式。rpm 仍然是红帽系列 Linux 的默认软件管理器,yum 可以视为 rpm 的一个前台工具。

其实,yum 的工作原理并不复杂。每个 rpm 软件包都有一个包头,包头中有该软件的依赖关系,如果可以将包头的内容记录下来并进行分析,就可以直到每个软件安装前需要额外安装哪些依赖了。

yum 服务器端事先以分析工具对其所提供的 rpm 软件包进行分析,将其所有的依赖关系记录为一个文件,并将其依赖的所有软件包都囊括到 yum 服务器中备用。所以,yum 的基本工作流程如下:

yum 服务器中放有软件源,软件源中有软件仓库,软件仓库中有三样东西:软件包索引,依赖关系数据,软件包。用户通过 yum 安装包时,通过客户端查询某个 yum 服务器上有无该软件,如有,就下载该服务器上面记录的该软件报的依赖关系数据,并根据这些数据一次性将所有依赖软件全部下载下来进行安装。

准备

使用 yum 之前,建议先执行以下两个步骤:

  • yum clean all:清除 yum 原有软件包缓存数据
  • yum makecache:将当前服务器上软件包相关信息存到本地以提高搜索软件的速度

用法

以 Linux 中的 C++ 编译工具 gcc-c++ 为例:

  • 安装包yum install gcc-c++
  • 查询包yum list gcc-c++
  • 查看包yum info gcc-c++
  • 更新包yum update gcc-c++
  • 卸载包yum remove gcc-c++

注意

普通用户只能查询和查看包,而不能安装、卸载以及更新包,这是 root 用户才有的权限。

参考

中国大学 MOOC | Linux 系统管理 | 主题 09 管好软件 | 小节 2 用 YUM 管理软件包

猜你喜欢

转载自blog.csdn.net/qq_42951560/article/details/125223664