yum源 三大常用配置方式


目前企业中yum的配置方式有如下场景

  • 场景一:iSO镜像搭建yum本地源(无法上公网,服务器较少)
  • 场景二:搭建阿里云/163 yum源
  • 场景三:HTTP搭建网络yum源(本地镜像多,服务器较多)---推荐

下面分别对三个场景进行傻瓜式配置 :joy:

一、 iSO镜像搭建yum本地源

1.1 挂载光驱

将光盘插入,通过mount挂在光驱至/mnt/cdrom目录下

mkdir /mnt/cdrom

mount /dev/cdrom /mnt/cdrom

yum源 三大常用配置方式_第1张图片

1.2 (可选) 将挂载写入开机启动项

echo "/dev/cdrom /mnt/cdrom iso9660 defaults 0 0" >> /etc/fstab

yum源 三大常用配置方式_第2张图片

测试是否生效

umount /dev/cdrom

mount -a

yum源 三大常用配置方式_第3张图片

df -h 查看/dev/sr0已经被挂载,OK

1.3 配置本地yum源

1.3.1 备份源repo文件(养成好习惯)

yum源 三大常用配置方式

1.3.2 创建repo文件

vim Centos7.repo

[Centos7]                           #yum唯一标识
name=Centos7_iso                    #yum名称,任意
baseurl=file:///mnt/cdrom           #yum镜像路径地址(还有ftp:// 和  http://)
enable=1                            #1启用,0禁用
gpgcheck=0                          #1校验,0不校验
1.3.3 清除缓存,加载yum源

yum clean all && yum makecache

yum源 三大常用配置方式_第4张图片

1.3.4 验证yum配置

yum list | grep nginx

yum源 三大常用配置方式

显示正常即OK

二、配置阿里云yum源

2.1 备份原yum文件

mv /etc/yum.repos.d/Centos-Base.repo /etc/yum.repos.d/Centos-Base.repo.bak20200709

yum源 三大常用配置方式

2.2 下载阿里云镜像yum文件

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

yum源 三大常用配置方式_第5张图片

2.3 清除缓存,加载yum源

yum clean all && yum makecache

yum源 三大常用配置方式_第6张图片

2.4 验证配置

yum list | grep nginx

yum源 三大常用配置方式

2.5 (可选)安装扩展EPEL源

场景:如果需要安装的包在Base yum源没有,就需要安装外部扩展yum源,如下以ansible安装为例

yum install ansible -y

yum源 三大常用配置方式_第7张图片

通过查看ansible 需要安装EPEL源

yum list | grep ansible

yum源 三大常用配置方式

2.5.1 查看系统的版本

cat /etc/redhat-release

yum源 三大常用配置方式

2.5.2 下载对应系统版本的epel-release rpm包

wget https://mirrors.aliyun.com/centos/7.8.2003/extras/x86_64/Packages/epel-release-7-11.noarch.rpm

yum源 三大常用配置方式_第8张图片

2.5.3 安装epel rpm包

rpm -ivh epel-release-7-11.noarch.rpm

yum源 三大常用配置方式

2.5.4 清除缓存,加载yum源

yum clean all && yum makecache

2.5.5 验证配置

yum install ansible -y

yum源 三大常用配置方式_第9张图片

正常显示OK

三、HTTP搭建网络yum源(推荐)

场景:iso镜像只能本机使用,如果需要内网中其他服务器使用,就需要构建http yum源仓库,也是企业中常用的配置方式。(ftp 也是可以的)

3.1 挂载iso本地镜像(详见一)

3.2 安装httpd等服务

yum install httpd httpd-devel -y

systemctl restart httpd.service

yum源 三大常用配置方式_第10张图片

3.3 配置防火墙

setenforce 0        #临时关闭SELinux

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config  #永久关闭SELinux(重启生效)

systemctl stop firewalld.service    #临时关闭防火墙

systemctl disable firewalld.service    #永久关闭防火墙

3.4 将镜像中/mnt/cdrom/Packages 拷贝至/var/www/html/yum/centos7.8

mkdir -p /var/www/html/yum/centos7.8

cp -R /mnt/cdrom/Packages/* /var/www/html/yum/centos7.8

3.5 安装createrepo本地仓库包,并建立索引

yum install createrepo* -y

createrepo /var/www/html/yum/centos7.8/

创建完成会有repodata文件夹生产

yum源 三大常用配置方式_第11张图片

3.6 另一台客户端配置yum文件,使用网络镜像

vim /etc/yum.repos.d/Centos7.8-http.repo

[centos7.8]
name=centos7.8-http
baseurl=http://192.168.197.128/yum/centos7.8
enable=1
gpgcheck=0

yum源 三大常用配置方式_第12张图片

yum clean all && yum makecache

yum源 三大常用配置方式_第13张图片

3.7 验证配置

yum list | grep nginx

yum源 三大常用配置方式

客户端能正常获取yum服务器文件,OK

3.8 (可选)另外一种场景

企业研发发布新rpm,如何更新yum服务器,让其他客户端正常获取,以下以docker安装为例

3.8.1 下载docker rpm包并上传至镜像仓库/var/www/html/yum/centos7.8

wget https://mirrors.aliyun.com/opensuse/history/20200218/tumbleweed/repo/oss/x86_64/docker-19.03.5_ce-4.1.x86_64.rpm

cp docker-19.03.5_ce-4.1.x86_64.rpm /var/www/html/yum/centos7.8/

yum源 三大常用配置方式_第14张图片

3.8.2 更新repodata索引

createrepo --update /var/www/html/yum/centos7.8/

yum源 三大常用配置方式_第15张图片

3.8.3 另一台客户端验证是否能获取docker

yum clean all

yum list | grep docker

yum源 三大常用配置方式

四、yum常用命令

yum install    # 安装

yum  remove    #卸载

yum update     #更新

yum clean all  #清除缓存

yum makecache  #加载缓存

yum info       #查看信息

yum list       #查看包列表