yum配置

本节简要介绍本地yum配置以及网络yum源的配置

yum(全称为 Yellow dog Updater, Modified)

yum作用

yum是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载,RPM包并且安装,可以自动处理依赖性关系.

yum工作原理

基于c/s机构,在server端,存放了rpm包及rpm元数据,元数据的内容包括:rpm包说明、版本信息、依赖性等。客户端需要用yum时。写一个配置文件,把路径指向yum服务器,客户端向服务端发起请求,服务端先把元数据信息缓存至客户端,根据缓存信息再下载对应的rpm包至客户端进行安装。

yum缓存带来的额外问题

如果yum服务端地址发生改变,客户端也重新指定了路径,但客户端中缓存rpm的元数据还是比较老旧的,会导致安装失败,此时需要清除yum缓存,执行命令yum clean all。

yum配置文件
/etc/yum.conf
[main]                                                                                  ###yum的名称
cachedir=/var/cache/yum/$basearch/$releasever  ###元数据缓存,$basearch表示架构$releasever 表示版                                                                                              本信息
keepcache=0                                                                      ###rpm包缓存,0表示不缓存
debuglevel=2
logfile=/var/log/yum.log                                                ###日志信息
exactarch=1
obsoletes=1
gpgcheck=1                                                                        ###检查rpm包签名和完整性
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

配置yum

1.确保本地光盘已经挂载

mount /dev/sr0 /mnt/cdrom

2.在/etc/yum.repos.d/目录下编辑一个配置文件,以.repo后缀结尾的文件,如果该目录下还有系统自带配置的yum,先暂时禁用
[base]                                                    ###容器名称
baseurl=file:///mnt/cdrom            ###本地yum路径,找到光盘中repodata父目录即为yum路径
gpgcheck=0                                        ###不检rpm包查签名和完整性

一个简单的yum源配置完成,注:file后面的路径跟的是本地yum源的路径,http、https、ftp则跟的是网络yum的路径

3.还可以根据需要添加epel源
[base]
baseurl=file:///mnt/cdrom
gpgcheck=0

[epel]
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=0

添加完成后清除缓存yum clean all
3.检查签名和完整性
gpgcheck=0表示不检查签名和完整性,检查签名和完整性需要导入公钥后才能检查,把此项换成gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-CentOS-7,系统则可根据路径自动导入密钥,也可以手动导入密钥rpm –import RPM-GPG-KEY-CentOS-6。

4.临时禁用repo容器,在其后面加上
enabled=0

5.baseurl可以写多个路径
baseurl=file:///mnt/cdrom
http://172.20.0.1/centos/7/

6.mirrorlist列表
mirrorlist=/data/baselist
baselist存放的内容如:
file:///mnt/cdrom
http://172.20.0.1/centos/7/

yum相关命令
yum repolist 列出所有repo容器
yum repolist 列出所有repo容器包括禁用的
yum list 列出所有包(缓存元数据)

 

配置网络yum源

按照https://mirrors.aliyun.com/centos/7/os/x86_64/格式配置一个专门yum服务器,为网络中的多台服务器提供yum服务(实验环境centos7)

 

1.在服务端安装http并启动服务  服务器ip172.20.109.4

yum -y install httpd

systemctl start httpd

注意关闭防火墙

systemctl stop firewalld

systemctl disable firewalld

2.在/var/www/html/下创建目录

mkdir -p centos/{6,7}/os/x86_64

3.把6和7版本光盘中文件分别拷入/var/www/html/centos/6/os/x86_64和/var/www/html/centos/7/os/x86_64目录中,或者以光盘挂载形式

cp -avr /mnt/cdrom/* /var/www/html/centos/7/os/x86_64/

scp -vr /mnt/cdrom/* /var/www/html/centos/6/os/x86_64/

4.在浏览器上分别输入路径

http://172.20.109.4/ centos/7/os/x86_64/

http://172.20.109.4/ centos/6/os/x86_64/

5.在网络中的所有客户端服务器均可根据版本选择设置baseurl

baseurl= http://172.20.109.4/ centos/7/os/x86_64/

baseurl= http://172.20.109.4/ centos/6/os/x86_64/

也可以引用变量,无论在6版本和7版本,写成如下形式:

baseurl= http://172.20.109.4/ centos/ $releasever/os/ $basearch/

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/96812

发表评论

登录后才能评论

联系我们

400-080-6560

在线咨询:点击这里给我发消息

邮件:1823388528@qq.com

工作时间:周一至周五,9:30-18:30,节假日同时也值班