yum配置源详解

Centos系统中yum源的配置一般有两种方式:

  • 一种是直接配置/etc目录下的yum.conf文件;
  • 一种是在/etc/yum.repos.d目录下直接添加xxx.repo文件。

1.查看机器版本

[root@myhost~]# cat /etc/redhat-release 
CentOS Linux release 7.3.1611 (Core) 

2.关于配置文件yum.conf详解

[root@myhost ~]# egrep -v "#|^$"  /etc/yum.conf 
[main]
cachedir=/var/cache/yum/$basearch/$releasever             #yum下载的RPM包的缓存目录
keepcache=0                                             #缓存是否保存,0不保存,1保存
debuglevel=2                                            #调试级别(0-10),默认为2
logfile=/var/log/yum.log                                #yum的日志文件所在的位置
exactarch=1             #在更新的时候,是否允许更新不同版本的RPM包,比如是否在i386上更新i686的RPM包
obsoletes=1             #这是一个update的参数,相当于upgrade,允许更新陈旧的RPM包
gpgcheck=1              #是否检查GPG(GNU Private Guard),一种密钥方式签名
plugins=1               #是否允许使用插件,默认是0不允许,但我们一般会用yum-fastestmirror这个插件
installonly_limit=5                                     #允许保留多少个内核包
exclude=selinux*        #屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离
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
[root@iZbp17qpn8m91l80gz044sZ ~]# 

3.xxx.repo文件详解

repo文件是yum源(软件仓库)的配置文件,通常一个repo文件定义了一个或者多个软件仓库的细节内容,例如:我们将从哪里下载需要安装或者升级的软件包,repo文件中的设置内容将被yum读取和应用。

[root@myhost ~]# ll /etc/yum.repos.d
total 44
drwxr-xr-x 2 root root 4096 Mar  1  2017 backup
-r--r--r-- 1 root root 1947 Mar  1  2017 CentOS-Base.repo
-rw-r--r-- 1 root root 1309 Nov 30  2016 CentOS-CR.repo
-rw-r--r-- 1 root root  649 Nov 30  2016 CentOS-Debuginfo.repo
-rw-r--r-- 1 root root  314 Nov 30  2016 CentOS-fasttrack.repo
-rw-r--r-- 1 root root  630 Nov 30  2016 CentOS-Media.repo
-rw-r--r-- 1 root root 1331 Nov 30  2016 CentOS-Sources.repo
-rw-r--r-- 1 root root 2893 Nov 30  2016 CentOS-Vault.repo
-r--r--r-- 1 root root  843 Mar  1  2017 epel.repo
-rw-r--r-- 1 root root 1222 Mar 23  2016 mysql-community.repo
-rw-r--r-- 1 root root 1236 Mar 23  2016 mysql-community-source.repo

我们以一份系统已经存在的的repo文件做为实例来探讨:

[root@myhost yum.repos.d]# egrep -v '#|^$' /etc/yum.repos.d/CentOS-Base.repo
[base]          #方括号里面的是下载软件源的名称,将被yum取得并识别

name=CentOS-$releasever - Base
#name这里也定义了软件 仓库的名称,通常是为了方便阅读配置文件,一般没什么作用,$releasever变量定义了发行版本,通常是8,9,10等数字,$basearch变 量定义了系统的架构,可以是i386、x86_64、ppc等值,这两个变量根据当前系统的版本架构不同而有不同的取值,这可以方便yum升级的时候选择 适合当前系统的软件包,以下同……

failovermethod=priority
#failovermethod 有两个值可以选择,priority是默认值,表示从列出的baseurl中顺序选择镜像服务器地址,roundrobin表示在列出的服务器中随机选择

exclude=compiz* *compiz* fusion-icon* 
#exclude这个选项是后来我自己加上去的,用来禁止这个软件仓库中的某些软件包的安装和更新,可以使用通配符,并以空格分隔,可以视情况需要自行添加

baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
        http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
#指定一个baseurl(源的镜像服务器地址)

#mirrorlist=http://mirrors.centosproject.org/mirrorlist?repo=centos-$releasever&arch=$basearch
#上面的这一行是指定一个镜像服务器的地址列表,通常是开启的,本例中加了注释符号禁用了,我们可以试试,将$releasever和$basearch替换成自己对应的版本和架构,例如10和i386,在<a href="http://www.it165.net/edu/ewl/" target="_blank" class="keylink">浏览器</a>中打开,我们就能看到一长串镜可用的镜像服务器地址列表。
#选择自己访问速度较快的镜像服务器地址复制并粘贴到repo文件中,我们就能获得较快的更新速度了。

gpgcheck=1              #是否检查GPG(GNU Private Guard),一种密钥方式签名
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
#定义用于校验的gpg密钥,就是数位签章的公钥档所在位置!


[updates]       #方括号里面的是更新软件源的名称,将被yum取得并识别
name=CentOS-$releasever - Updates
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/
        http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[extras]        #方括号里面的是额外软件源的名称,将被yum取得并识别
name=CentOS-$releasever - Extras
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/
        http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1      
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[centosplus]    #方括号里面的是..软件源的名称,将被yum取得并识别
name=CentOS-$releasever - Plus
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/centosplus/$basearch/
        http://mirrors.aliyun.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[contrib]       #方括号里面的是..软件源的名称,将被yum取得并识别
name=CentOS-$releasever - Contrib
failovermethod=priority
baseurl=http://mirrors.cloud.aliyuncs.com/centos/$releasever/contrib/$basearch/
        http://mirrors.aliyun.com/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.cloud.aliyuncs.com/centos/RPM-GPG-KEY-CentOS-7
http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

猜你喜欢

转载自blog.csdn.net/yuki5233/article/details/75453202