Linux yum源配置以及yum命令讲解

前面为大家介绍了RPM二进制包安装软件,RPM包安装的最大的缺点也提到过,就是依赖性太强,一旦遇到依赖问题,则需要我们手动解决包之间具有依赖性的问题,今天为大家介绍一种可自动解决包之间依赖关系的安装方式:yum

yum 全称“Yellow dog Updater, Modified”,是一个专门为了解决包的依赖关系而存在的软件包管理器。就好像 Windows 系统上我们通常可以通过各种软件管家实现软件的一键安装、升级和卸载,yum就是Linux 系统中的一键安装工具yum 解决依赖关系的基本逻辑是:yum 在服务器端存有所有的 RPM 包,并将各个包之间的依赖关系记录在文件中,当管理员使用 yum 安装 RPM 包时,yum 会先从服务器端下载包的依赖性文件,通过分析此文件从服务器端一次性下载所有相关的 RPM 包并进行安装。

一、yum安装

CentOS 默认已经安装了yum,不需要另外安装,不过为了保险起见,我们还是先看下系统中是否已安装了yum:

$rpm -qa|grep yum

image

如上截图,表示系统中已经安装了yum。

二、yum源配置

何为yum源,使用 yum 安装软件包之前,需指定好 yum 下载 RPM 包的位置,此位置称为 yum 源。换句话说,yum 源指的就是软件安装包的来源。

使用 yum 安装软件时至少需要一个yum源。yum源既可以使用网络yum源,也可以将本地光盘作为yum源。接下来就给大家介绍配置网络yun源,个人习惯阿里云的源。

网络 yum 源配置文件位于/etc/yum.repos.d/目录下,文件扩展名为”.repo”(只要扩展名为 “.repo” 的文件都是 yum 源的配置文件),通常情况下我们关注 CentOS-Base.repo 文件即可:

image

我们来看下这个文件里面都有什么内容:

vi CentOS-Base.repo

image

  • [BaseOS]:容器名称,一定要放在[]中
  • name:容器说明
  • mirrorlist:镜像站点
  • baseurl:yum 源服务器的地址。默认是 CentOS 官方的 yum 源服务器,是可以使用的。如果你觉得慢,则可以改成你喜欢的 yum 源地址
  • enabled:此容器是否生效,如果不写或写成 enabled 则表示此容器生效,写成 enable=0 则表示此容器不生效
  • gpgcheck:如果为 1 则表示 RPM 的数字证书生效;如果为 0 则表示 RPM 的数字证书不生效
  • gpgkey:数字证书的公钥文件保存位置。不用修改
1、我们首先将Centos-Base.repo文件进行备份

文件备份可以用cp命令复制一份,也可以把文件压缩成一个压缩包,这里我习惯压缩成一个压缩包:

$ zip Centos-Base.repo.zip Centos-Base.repo

2、删除Centos-Base.repo文件

$rm Centos-Base.repo

3、下载阿里云的yum源到etc/yum.repos.d文件目录下

$ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

4、清理yum并生成缓存

$ yum clean all

image

三、yum相关操作命令

1、yum查询命令
  • yum list:查询所有已安装和可安装的软件包
  • yum list [包名]:查询执行软件包的安装情况
  • yum search [关键字]:从 yum 源服务器上查找与关键字相关的所有软件包
  • yum info [包名]:查询执行软件包的详细信息
2、yum安装命令

yum 安装软件包的命令基本格式为:

yum -y install 包名

  • install:表示安装软件包。
  • -y:自动回答结果为yes。如果不加 -y,那么每个安装的软件都需要手动回答 yes
3、yum 升级命令

使用 yum 升级软件包,需确保yum源服务器中软件包的版本比本机安装的软件包版本高

  • $ yum -y update:升级所有软件包。不过考虑到服务器强调稳定性,因此该命令并不常用。
  • $ yum -y update [包名]:升级特定的软件包
4、yum 卸载命令

$ yum remove 包名

使用 yum 卸载软件包时,会同时卸载所有与该包有依赖关系的其他软件包,即便有依赖包属于系统运行必备文件,也会被 yum 无情卸载,带来的直接后果可能会使系统崩溃。除你能确定卸载此包以及它的所有依赖包不会对系统产生影响,否则不要使用 yum 卸载软件包。

image

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!