天涯共此良辰时

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

一、yum 简介

  Linux系统安装软件的方式一般分为三种:

    第一种:源码包,需要程序员自行编译安装。

      优点:开源,可以实现自定义可裁剪安装软件;软件是编译安装,更加稳定,卸载方便

      缺点:安装过程繁琐,如果是大型项目软件很容易出错

    第二种:rpm(Redhat Package Manager)工具。rpm原是Red Hat Linux发行版专门用来管理Linux的程序工具,遵循GPL规则且功能强大,因而深受喜爱。

      优点:包管理变得简单,通过几个命令就可以实现安装,卸载和更新软件

      缺点:无法解决依赖性问题,比如复杂一点的软件包依赖于别的软件包才能安装,而别的软件包又以来于另外的软件包。非常的麻烦

    第三种:yum(Yellow dogUpdater Modified)工具。yum是一款在RedHat,Fedora以及CentOS中的Shell前端软件管理器。

  

  说明:    

    1. yum软件仓库的产生,就是为了解决软件包之间的依赖关系,最大的优点就是帮助Linux用户降低软件安装要求;

    2.yum的宗旨就是自动化地升级,安装和移除rpm包,收集rpm包的相关信息,检查依赖性并自动提示用户解决。

    3.yum包含rpm的header部(包含软件描述信息,功能信息,提供的文件信息以及依赖信息),yum会收集这些header部并且分析,所以才自动的处理rpm软件包之间的依赖关系。

二、yum源核心文件

    yum信息存储目录:/etc/yum.repo.d/

[root@centos01 ~]# ll /etc/yum.repos.d/
total 32
-rw-r--r--. 1 root root 1664 Apr 29 2018 CentOS-Base.repo    #
-rw-r--r--. 1 root root 1309 Apr 29 2018 CentOS-CR.repo
-rw-r--r--. 1 root root 649 Apr 29 2018 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 314 Apr 29 2018 CentOS-fasttrack.repo
-rw-r--r--. 1 root root 630 Apr 29 2018 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 Apr 29 2018 CentOS-Sources.repo
-rw-r--r--. 1 root root 4768 Apr 29 2018 CentOS-Vault.repo

    

    *.repo文件定义了一个或多个软件仓库的细节内容,比如从哪里下载以及升级的软件包,repo文件会被yum读取

[root@centos01 ~]# cat /etc/yum.repos.d/CentOS-Base.repo

[base]    # yum ID,基础镜像源
name=CentOS-\$releasever - Base    # 具体的yum源名称
mirrorlist=http://mirrorlist.centos.org/?release=\$releasever&arch=\$basearch&repo=os&infra=\$infra    # 镜像服务器的地址列表,可以包含多个地址
#baseurl=http://mirror.centos.org/centos/\$releasever/os/\$basearch/    # 镜像服务器的地址
gpgcheck=1    # 是否需要验证,0表示取消验证,1表示使用公钥检验rpm的正确性
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7  # gpgcheck验证的公钥,只有gpgcheck=1时对下载的rpm会进行gpg的校验,密钥时gpgkey

 

    yum源配置文件:/etc/yum.conf

[root@centos01 ~]# cat /etc/yum.conf
[main]  
cachedir=/var/cache/yum/\$basearch/\$releasever  # yum下载的RPM包的缓存目录
keepcache=0    # 缓存示符保存,1保存,0不保存
debuglevel=2    # 调试级别(0-10),默认为2
logfile=/var/log/yum.log    # yum的日志文件所在的位置
exactarch=1      # 更新的时候,是否运行更新不同版本的RPM包
obsoletes=1      # 是否运行更新陈旧的RPM包
gpgcheck=1      # 是否检查密钥的签名
plugins=1       # 是否运行使用插件
installonly_limit=5    # 运行保留多少个内核包
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release  # bug追踪镜像源地址

 

三、如何优化yum基础镜像源(以阿里云为例)

  第一步:打开阿里镜像源网站

     https://developer.aliyun.com/mirror/

  第二步:选择CentOS

  第三步:配置方法(2.下载最新的Centos-Base.repo)

        curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

 

四、如何优化yum扩展镜像源(主要是跟Base镜像源进行互补,解决软件不够丰富的问题) 

  第一步:打开阿里镜像源网站

     https://developer.aliyun.com/mirror/

  第二步:选择EPEL

  第三步:选择扩展源 

    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

    

五、yum源常用命令 yum --help

   1. 软件安装  yum install -y

   2. 软件更新  yum update

   3. 软件检查  yum list

   4. 软件卸载  yum remove(强烈不建议使用)

   5. 清除缓存  yum clean 

   6. 检查某个软件是哪个大礼包提供的?  yum provides

  

posted on 2020-07-29 10:49  天涯共此良辰时  阅读(306)  评论(0编辑  收藏  举报