YUM软件源配置
这篇博客记录一下linux系统下YUM软件源的配置,操作环境为centos6
一、Yum
Yum是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。
yum的工作需要两部分来合作,一部分是yum服务器,还有就是client的yum工具。
yum服务器所有要发行的rpm包都放在yum服务器上以提供别人来下载,rpm包根据kernel的版本号,cpu的版本号分别编译发布。yum服务器只要提供简单的下载就可以了,ftp或者httpd的形式都可以。yum服务器有一个最重要的环节就是整理出每个rpm包的基本信息,包括rpm包对应的版本号,conf文件,binary信息,以及很关键的依赖信息。在yum服务器上提供了createrepo工具,用于把rpm包的基本概要信息做成一张”清单”,这张”清单””就是描述每个rpm包的spec文件中信息。
yum client端client每次调用yum install或者search的时候,都会去解析/etc/yum.repos.d下面所有以.repo结尾的配置文件(即yum源),这些配置文件指定了yum服务器的地址。yum会定期去”更新”yum服务器上的rpm包”清单”,然后把”清单”下载保存到yum自己的cache里面,根据/etc/yum.conf里配置(默认是在/var/cache/yum下面),每次调用yum装包的时候都会去这个cache目录下去找”清单”,根据”清单”里的rpm包描述从而来确定安装包的名字,版本号,所需要的依赖包等,然后再去yum服务器下载rpm包安装。(前提是不存在rpm包的cache)
二、软件源配置
各大开源镜像站汇总:https://zhuanlan.zhihu.com/p/54573023
配置文件需要放在/etc/yum.repos.d下,并需要以.repo结尾
1 | [root@localhost yum.repos.d]# ll |
我们可以选用现有的repo文件,用阿里云开源镜像站做个示范,选择自己需要的repo文件,下载到/etc/yum.repos.d目录,下载完成后需要对yum的缓存进行清除和更新
1 | wget -O /etc/yum.repos.d/CentOS-Base-163.repo http://mirrors.163.com/.help/CentOS6-Base-163.repo |
我们也可以自己写配置文件,以gitlab镜像源配置为例
1 | vim /etc/yum.repos.d/gitlab-ce.repo |