CentOS Yum 的基本使用

610 阅读3分钟

一、简介

  • Linux 系统中,软件的管理方式有三种: rpmyum编译方式

  • yum,是 Yellow dog Updater, Modified 的简称,是杜克大学为了提高 RPM 软件包安装性而开发的一种软件包管理器。起初是由 yellow dog 这一发行版的开发者 Terra Soft 研发,用 python 写成,那时还叫做 yup(yellow dog updater),后经杜克大学的 Linux@Duke 开发团队进行改进,遂有此名。yum 的宗旨是自动化地升级,安装/移除 rpm 包,收集 rpm 包的相关信息,检查依赖性并自动提示用户解决。yum 的关键之处是要有可靠的 repository,顾名思义,这是软件的仓库,它可以是 httpftp 站点,也可以是本地软件池,但必须包含 rpmheaderheader 包括了 rpm 包的各种信息,包括描述,功能,提供的文件,依赖性等。正是收集了这些 header 并加以分析,才能自动化地完成余下的任务。

  • yum 的理念是使用一个中心仓库(repository)管理一部分甚至一个 distribution 的应用程序相互关系,根据计算出来的软件依赖关系进行相关的升级、安装、删除等等操作,减少了 Linux 用户一直头痛的 dependencies 的问题。这一点上,yumapt 相同。apt 原为 debiandeb 类型软件管理所使用,但是现在也能用到 RedHat 门下的 rpm 了。

  • yum 主要功能是更方便的添加/删除/更新 RPM 包,自动解决包的倚赖性问题,便于管理大量系统的更新问题。

  • yum 可以同时配置多个资源库(Repository),简洁的配置文件(/etc/yum.conf),自动解决增加或删除 rpm 包时遇到的依赖性问题,保持与 RPM 数据库的一致性。

  • CentOS 默认已经安装了 yum,不需要另外安装。

二、rpmyum 的关系与优缺点

  • yum 是对 rpm 的封装升级,yum 基于 rpm

  • rpm 优点:

    对于软件包的操作比较简单,通过简单指令即可操作。

  • rpm 缺点:

    安装时需要自行下载软件包,安装、卸载软件时需要考虑到依赖关系,软件的自定义性比较差,不适合有特殊需求的场景。

  • yum 优点:

    快速、傻瓜式的软件管理方式,在联网情况下,自动从服务器上下载软件包(内、外网服务器均可),自动解决软件依赖关系

  • yum 缺点:

    因其底层实为 rpm 操作,所以也丧失了对软件的自定义功能。

三、使用(常用语法)

  • 搜索/查询([]为可选字段)

    // 根据关键词搜索服务器上的包资源
    $ yum search [all] 关键字
    
    // 列出所有的软件,包含已经安装的和可供安装的(不加关键词列出全部,加关键词列出指定的软件)
    $ yum list [关键字]
    
    // 列出当前已经安装的软件(不加关键词列出全部,加关键词列出指定的软件)
    $ yum list installed [关键字]
    
  • 安装

    // 安装指定的软件
    // 通常安装软件,会询问是否要安装,加上 -y 则不会询问,算是你选择了 yes 直接安装。
    // -y 与 install 的顺序可以颠倒,谁前谁后都可以。
    $ yum [-y] install 关键词
    
  • 卸载

    // 卸载指定的软件
    // 通常卸载软件,会询问是否要卸载,加上 -y 则不会询问,算是你选择了 yes 直接卸载。
    // -y 与 remove 的顺序可以颠倒,谁前谁后都可以。
    $ yum [-y] remove 关键词
    
  • 更新(过程时间有点久)

    // 更新整个系统,包含内核
    $ yum [-y] update
    
    // 更新指定软件
    $ yum [-y] update 关键字