首页 > 其他 > 详细

Centos7部署本地Yum源仓库

时间:2020-09-18 23:03:59      阅读:64      评论:0      收藏:0      [点我收藏+]

环境

需要用到reposync和createrepo两个命令,若没有这样安装:

shell> yum install -y yum-utils
shell> yum install -y createrepo

场景

很多工具软件的下载地址都在国外,大部分时间速度不敢恭维,而且有时候我们的某些机器并不能访问外网;

这时候最好的解决方式就是搭建一个本地Yum源仓库,只需要通过外网下载一次,局域网其他机器走内网即可完成安装;

本文以Saltstack-3001.1为例,在一台能通外网的机器上部署其本地仓库。

创建

首先配置Saltstack的官方源:

shell> yum install -y https://repo.saltstack.com/py3/redhat/salt-py3-repo-3001-1.el7.noarch.rpm
shell> yum repolist
源标识             源名称                                  状态
salt-py3-3001/x86_64    SaltStack 3001 Release Channel for Python 3 RHEL/Centos 7    12

创建仓库路径,然后使用reposync将远程仓库salt-py3-repo-3001同步到本地

shell> mkdir -p /mydata/yum-repo
shell> cd /mydata/yum-repo
shell> reposync -r salt-py3-3001  # 可以加上-u参数只查看要下载的文件列表,确认没问题再执行下

注:reposync是推荐的方式,用其他途径获得rpm包丢进去是一样的,要注意依赖的包全不全

下载完成后,本地保存路径是:/mydata/yum-repo/salt-py3-3001,在该处建立仓库:

shell> cd /mydata/yum-repo/salt-py3-3001
shell> createrepo .  # 目录下会新增一个repodata文件夹保存仓库元数据

这样,一个本地的salt-py3-3001仓库建立完毕。

本机测试

在为局域网其他机器提供服务前,先在本机上测试下。

首先删除官方源并清理缓存:

shell> yum remove -y salt-py3-repo-3001
shell> yum clean all

创建一个文件:/etc/yum.repos.d/local-salt-3001.repo(文件名随意),内容如下:

[local-salt-3001]
name=SaltStack 3001 Release Channel for Python 3 RHEL/Centos $releasever
baseurl=file:///mydata/yum-repo/salt-py3-3001
enabled=1
gpgcheck=0

建立缓存,并查看本地仓库中的salt-minion信息:

shell> yum makecache
shell> yum info salt-minion
可安装的软件包
名称    :salt-minion
架构    :noarch
版本    :3001.1
发布    :1.el7
大小    :39 k
源    :local-salt-3001
简介    : Client component for Salt, a parallel remote execution system
网址    :http://saltstack.org/
协议    : ASL 2.0
描述    : The Salt minion is the agent component of Salt. It listens for instructions
         : from the master, runs jobs, and returns results back to the master.
         : Supports Python 3

测试通过。

提供服务

这里选择nginx提供服务,安装:

shell> wget http://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.18.0-1.el7.ngx.x86_64.rpm
shell> yum install -y ./nginx-1.18.0-1.el7.ngx.x86_64.rp

修改配置文件/etc/nginx/conf.d/default.conf:

location / {
    autoindex on;   # 显示目录
    autoindex_exact_size on;    # 显示文件大小
    autoindex_localtime on;     # 显示文件时间
    root   /mydata/yum-repo;
}

通过浏览器或curl命令访问:http://[IP地址]:[端口]/salt-py3-3001/,内容如下:

技术分享图片

至此配置nginx提供服务完成。

局域网使用

在局域网内找一台未安装saltstack的机器,创建一个文件:/etc/yum.repos.d/local-salt-3001.repo,内容如下(与上文的区别只有baseurl):

[local-salt-3001]
name=SaltStack 3001 Release Channel for Python 3 RHEL/Centos $releasever
baseurl=http://[IP地址]:[端口]/salt-py3-3001/
enabled=1
gpgcheck=0

这样就可以通过本地仓库安装saltstack了:

shell> yum install -y salt-master salt-minion

扩展

若需要增加其他工具软件的本地源,在/mydata/yum-repo下新建并同步,然后配置/etc/yum.repos.d/local-[其他软件].repo即可。

OVER

Centos7部署本地Yum源仓库

原文:https://www.cnblogs.com/toSeek/p/13692484.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!