制作linux系统内部yum源仓库

需求说明

制作内网linux系统yum源仓库,比较简单的方式就是添加系统镜像,此种yum配置方式可参考文章 https://blog.csdn.net/d1240673769/article/details/108477661

如果无法提供系统镜像,那该如何创建内网的yum源仓库呢?本文提供另一种方式(此种方式需要在能访问公网的环境中配置,配置完成后可转移至内网环境中)

环境准备

本文以 centos7.7 x86 系统为例,为centos7.7系统创建内部yum源仓库。
准备一台可访问公网的centos7.7服务器,系统中yum源默认配置信息如下:
制作linux系统内部yum源仓库_第1张图片
查看当前系统yum源:
在这里插入图片描述
安装制作yum源仓库需要用到的命令包:

yum -y install yum-utils
yum -y install reposync
yum -y install createrepo

制作yum源

1. 从公网下载源

创建源文件存储的位置,如 /mnt/mirror/x86_64 ,将从公网下载的源文件存在服务器 /mnt/mirror/x86_64 目录下(源文件占用空间较大,建议留足空间,约20G左右)

创建存储目录

mkdir -p /mnt/mirror/x86_64

从公网下载源,通过 reposync 命令

reposync -p /mnt/mirror/x86_64/ 
# 下载过程用时较长,建议挂起运行,nohup reposync -p /mnt/mirror/x86_64/ &

上述命令会默认下载 base 、extras 和 updates 三个目录中的软件包,也可通过下面命令只下载base中的安装包:

# 下载base目录到本地
reposync -r base -p /mnt/mirror/x86_64/ 

下载完成后,会在/mnt/mirror/x86_64/ 目录中生成三个目录:base、extras和updates,如下图:
制作linux系统内部yum源仓库_第2张图片
每个目录中都有一个 Packages的目录,该目录中为下载的rpm软件包,如下图:
制作linux系统内部yum源仓库_第3张图片

2. 创建索引

通过 createrepo 命令创建yum源索引

createrepo -po /mnt/mirror/x86_64/base/ /mnt/mirror/x86_64/base/
createrepo -po /mnt/mirror/x86_64/extras/ /mnt/mirror/x86_64/extras/
createrepo -po /mnt/mirror/x86_64/updates/ /mnt/mirror/x86_64/updates/

执行如下图:
制作linux系统内部yum源仓库_第4张图片
执行完成后,会在每一个目录下生成一个 repodata 目录,如下图:
制作linux系统内部yum源仓库_第5张图片

3. nginx发布自制yum源

在服务器nginx配置中,增加server配置,如下图:

server {
       listen 9999;
       root /mnt/mirror/;
       location / { 
	        autoindex on; 
	        autoindex_exact_size off; 
	        autoindex_localtime on; 
	        charset utf-8,gbk; 
	        index index.html; 
        }
   }

重启nginx后,访问服务器 9999 端口 /x86_64/ 目录,可访问到yum源软件安装包,如下图:
制作linux系统内部yum源仓库_第6张图片

制作linux系统内部yum源仓库_第7张图片

4. 创建其他服务器访问内部的yum源

创建 centos-local.repo ,内容如下:

[base]
name=CentOS-Base
baseurl=http://10.7.2.230:9999/x86_64/base/
gpgcheck=0
enabled=1

# 可以只配置base部分,如需其他部分,也可以加上
[extras]
name=CentOS-Extras
baseurl=http://10.7.2.230:9999/x86_64/extras/
gpgcheck=0
enabled=1

#[updates]
#name=CentOS-Updates
#baseurl=http://10.7.2.230:9999/x86_64/updates/
#gpgcheck=0
#enabled=1

5. 验证

将上述配置上传到235服务器上,如下图:
制作linux系统内部yum源仓库_第8张图片
清除yum源配置,并重新加载缓存:
制作linux系统内部yum源仓库_第9张图片
配置完成,此时可通过yum安装内部源中的软件包了。

你可能感兴趣的:(linux学习笔记,linux,运维)