Centos7.2学习记录(3)——搭建本地yum仓库

入职以来,由于公司云主机运行在内网环境下,在搭建kubernetes和openshift集群时都需要进行离线安装,这里粗略记录一下本地yum仓库的搭建过程。

httpd配置

安装httpd

在目标服务器上安装httpd。

# yum install -y httpd

修改httpd端口号

我的80端口已被占用,故这里修改httpd的端口号。 修改/etc/httpd/conf/httpd.conf。 将Listen 80改为Listen 8180。

创建发布yum源的httpd配置文件

# vim /etc/httpd/conf.d/yum.conf

内容如下:

Alias /repo "/var/www/html/yum"

防火墙设置

这里有两种操作。

  • 禁用防火墙
# systemctl disable firewalld
# systemctl stop firewalld
  • 修改iptables并增加selinux中http的端口

由于我的yum仓库部署在openshift集群的master节点上,故这里采用修改iptables并增加selinux中http的端口的方式。 修改/etc/sysconfig/iptables。添加如下规则:

-A OS_FIREWALL_ALLOW -p tcp -m state --state NEW -m tcp --dport 8180 -j ACCEPT

重启iptables服务。

# systemctl restart iptables

增加selinux中http的端口。

# semanage port -a -t http_port_t -p tcp 8180

重启Httpd,使修改的配置生效

# systemctl enable httpd
# systemctl restart httpd

配置yum源目录

RPM包的准备

可通过yum install --downloadonly --downloaddir=temp packageName的指令下载RPM包,也可以通过reposync同步目标源到本地,这里可以自行选择适合的方式。

上传所有RPM包到目标服务器/var/www/html/yum目录下

我采用ftp的方式将所有RPM包传到了目标服务器上,目录可以自定义(修改目录的话,可能需要对httpd的配置文件做修改,不然可能会出现403 - Forbidden等错误,我没深入研究)。这里采用的目录是/var/www/html/yum。 上传成功后在目标服务器上执行:

# createrepo /var/www/html/yum

yum服务器节点创建 /etc/yum.repos.d/local.repo文件

内容如下:

[local]
name = local
baseurl = file:///var/www/html/yum
gpgcheck = 0
enabled = 1

验证

yum服务器节点验证

# yum clean all 
# yum repolist

可以看出已经加载了上文建立的名为local的yum源。

其他节点验证

创建/etc/yum.repos.d/local.repo文件,指向上文创建的yum源。 内容如下:

[local]
name = local
baseurl = http://10.126.3.207:8180/repo/
gpgcheck = 0
enabled = 1
# yum clean all 
# yum repolist

可以看出已经加载了上文建立的名为local的yum源。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏linux运维学习

linux学习第五十二篇: exportfs命令,NFS客户端问题,FTP介绍,使用vsftpd搭建ftp服务

exportfs命令 常用选项 -a 全部挂载或者全部卸载 -r 重新挂载 -u 卸载某一个目录 -v 显示共享目录 以下操作在服务端上 vim /et...

1878
来自专栏Python中文社区

1行Python代码实现FTP服务器

当你想快速共享一个目录的时候,这是特别有用的,只需要1行代码即可实现。 FTP 服务器,在此之前我都是使用Linux的vsftpd软件包来搭建FTP服务器的,现...

24710
来自专栏bboysoul

树洞外链安装

一直想给树莓派安装一个图床什么的,一直没有找到合适的程序,直到发现了这个树洞外链 树洞外链是一个开源的,支持本地存储远程存储,多用户的一个外链系统,界面也是挺...

582
来自专栏乐百川的学习频道

用TeamCity实现npm项目的自动部署

TeamCity是Jetbrains的持续集成工具,免费使用的话可以设置20个构建脚本,对于我们个人来说基本上是够用了。当然假如以后超过限制了,可以考虑使用另一...

2529
来自专栏运维小白

Linux基础(day49)

12.6 Nginx安装 Nginx安装目录概要 cd /usr/local/src wget http://nginx.org/download/nginx-...

1716
来自专栏北京马哥教育

浅谈linux用户与用户组的概念

1.用户 用户是能够获取系统资源的权限的集合. .linux用户组的分类: a.管理员 root :具有使用系统所有权限的用户,其UID 为0. ...

3076
来自专栏晓晨的专栏

ABP从入门到精通(5):.扩展国际化语言资源

913
来自专栏我和PYTHON有个约会

python-应用层-网络编程-FTP

前面描述的基于TCP/UDP协议的网络程序开发,主要是针对传输层协议的底层代码实现 在实际操作过程中,更多的情况是直接操作应用层的数据协议的网络程序开发,如文...

933
来自专栏地方网络工作室的专栏

打造前端 Deepin Linux 工作环境——GUI图形压缩软件 PeaZip 的安装与设置

打造前端 Deepin Linux 工作环境——GUI图形压缩软件 PeaZip 的安装与设置 说实话,谁不喜欢简单明了的图形化的软件呢。但是在 linux 和...

20810
来自专栏.NET技术

NuGet的使用和服务搭建

   最近部门,在开发的时候遇到一个问题,现在有项目A B C三个项目,项目B和C分别提供了组件库由项目A直接引用。那么每次开打项目A获取最新后,同时还得打开项...

1152

扫码关注云+社区