百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程文章 > 正文

搭建企业内部YUM源仓库,从此不再依赖公网源

qiyuwang 2024-10-14 14:28 25 浏览 0 评论

背景

YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。要使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库),这个软件仓库我们称为yum源镜像。


互联网上有大量的yum源,但由于受到网络环境的限制,导致软件安装耗时长等问题。特别是大规模服务器部署要安装软件时,慢得令人很无奈。因此我们在初始化系统时,都会更换到国内的镜像源。


相比公网源而言,本地YUM源服务器最大的优点是部署在局域网,网络连接快和稳定性高(毕竟在内网,内网之间的带宽还是要比公网快几倍以上的)。有了内网中的YUM源服务器,即便外网连接中断的情况下(一般情况服务器都是不能访问外网的),也不会影响内网中的软件安装和升级。

准备

2台CentOS机器:

1台用于yum源服务器

1台用于测试内网的yum源


安装http服务和createrepo

[root@localhost ~]# yum -y install createrepo

[root@localhost ~]#  mkdir -pv /var/www/html/CentOS-7/os/   #因为同步镜像文件太大,我这里用于同步一个os文件
[root@localhost ~]# yum install -y httpd
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# systemctl status httpd


在电脑上修改hosts

192.168.3.233  yum.qiang.com

浏览器打开yum.qiang.com,正常访问


修改http配置

# 修改配置前先备份(一定要记住这点)
[root@localhost ~]# cd /etc/httpd/conf
[root@localhost conf]# cp httpd.conf httpd.conf.bak

我这里默认配置就行, 但是要改/etc/httpd/conf.d/welcome.conf 配置,修改配置要重启http服务噢!
[root@localhost CentOS-7]# vim /etc/httpd/conf.d/welcome.conf 
<LocationMatch "^/+#34;>
    Options Indexes
    ErrorDocument 403 /.noindex.html
</LocationMatch>

将 Options -Indexes 的 “ - ”删除,如果不将这个删除,访问主页的时候就会跳转到测试页,只有输入对应的文件后缀才能访问到你要访问的页面。

其中这个“-”号表示禁止的意思,所以这个设置的意思就是根目录“/”下不支持文件列表,自动跳转到403页面

将“ - ”删除后,访问的主页就是/var/www/html目录下的内容。


● 未删除 “ - ”之前


● 删除 “ - ”之后


最后通过rsync同步公网的镜像

● 安装rsync

[root@localhost ~]# yum install rsync -y
// 使用rsync同步公网的镜像,我这里只同步os文件,如果是同步整个centos7的可以改成第2个
[root@localhost ~]# rsync -av rsync://mirrors.ustc.edu.cn/centos/7/os/  /var/www/html/CentOS-7/os/

[root@localhost ~]# rsync -av rsync://mirrors.ustc.edu.cn/centos/7/  /var/www/html/CentOS-7/   #这是同步整个Centos7的镜像,同步其他可以选择其他的镜像

● 同步os完成,11G的大小


测试部署好的内网源

● 通过 yum repolist yum makecache发现是可以正常使用的状态


● 测试安装软件也是可以正常进行的


定期更新公网源到内网

[root@localhost ~]# vim /cron/repository.sh        // 编写同步脚本
rsync -av rsync://mirrors.ustc.edu.cn/centos/7/os/ /var/www/html/CentOS-7/os/
[root@localhost ~]# crontab -e                   // 添加定时任务
添加:
0 0 L * *  sh  /root/repository.sh             // 每月最后一天0时更新yum仓库,因为更新公网源需要占用大量网络带宽,建议在凌晨更新


故障处理:

报错:

@ERROR: max connections (20) reached -- try again later
rsync error: error starting client-server protocol (code 5) at main.c(1503) [receiver=3.0.6]

解决方法:

yum源服务器超过最大连接数,请过会再试。(多试几次试试)


#运维工具# #每日一点linux#

相关推荐

基于Docker方式安装与部署Camunda流程引擎

1Camunda简介官网:https://docs.camunda.org/manual/7.19/installation/docker/Camunda是一个轻量级、开源且高度灵活的工作流和决策自...

宝塔Linux面板如何部署Java项目?(宝塔面板 linux)

通过宝塔面板部署Java还是很方便的,至少不需要自己输入tomcat之类的安装命令了。在部署java项目前,我还是先说下目前的系统环境,如果和我的系统环境不一样,导致部署不成功,那你可能需要去找其他资...

浪潮服务器如何用IPMI安装Linux系统

【注意事项】此处以浪潮服务器为例进行演示所需使用的软件:Chrome浏览器个人PC中需要预先安装java,推荐使用jdk-8u181-windows-x64.exe【操作步骤】1、在服务器的BIOS中...

Centos7环境Hadoop3集群搭建(hadoop集群环境搭建实验报告)

由于项目需要存储历史业务数据,经过评估数据量会达到100亿以上,在原有mongodb集群和ES集群基础上,需要搭建Hbase集群进行调研,所以首先总结一下Hadoop集群的搭建过程。一、三个节点的集群...

Hadoop高可用集群搭建及API调用(hadoop高可用原理)

NameNodeHA背景在Hadoop1中NameNode存在一个单点故障问题,如果NameNode所在的机器发生故障,整个集群就将不可用(Hadoop1中虽然有个SecorndaryNameNo...

使用Wordpress搭建一个属于自己的网站

现在开源的博客很多,但是考虑到wordpress对网站的seo做的很好,插件也多。并且全世界流量排名前1000万的网站有33.4%是用Wordpress搭建的!所以尝试用Wordpress搭建一个网站...

Centos 安装 Jenkins(centos 安装ssh)

1、Java安装查看系统是否已安装Javayumlistinstalled|grepjava...

Java教程:gitlab-使用入门(java中的git)

1导读本教程主要讲解了GitLab在项目的环境搭建和基本的使用,可以帮助大家在企业中能够自主搭建GitLab服务,并且可以GitLab中的组、权限、项目自主操作...

Dockerfile部署Java项目(docker部署java应用)

1、概述本文主要会简单介绍什么是Docker,什么是Dockerfile,如何安装Docker,Dockerfile如何编写,如何通过Dockerfile安装jar包并外置yaml文件以及如何通过do...

如何在Eclipse中搭建Zabbix源码的调试和开发环境

Zabbix是一款非常优秀的企业级软件,被设计用于对数万台服务器、虚拟机和网络设备的数百万个监控项进行实时监控。Zabbix是开放源码和免费的,这就意味着当出现bug时,我们可以很方便地通过调试源码来...

Java路径-02-Java环境配置(java环境搭建及配置教程)

1Window环境配置1.1下载...

35.Centos中安装python和web.py框架

文章目录前言1.Centos7python:2.Centos8python:3.进行下载web.py框架然后应用:4.安装好之后进行验证:5.总结:前言...

《我的世界》服务器搭建(我的世界服务器如何搭建)

1.CentOS7环境1.1更改YUM源#下载YUM源文件curl-o/etc/yum.repos.d/CentOS-Base.repohttps://mirrors.aliyun.com...

CentOS 7 升级 GCC 版本(centos7.4升级7.5)

1.GCC工具介绍GCC编译器:...

Linux安装Nginx详细教程(linux安装配置nginx)

环境准备1.因为Nginx依赖于gcc的编译环境,所以,需要安装编译环境来使Nginx能够编译起来。命令:yuminstallgcc-c++显示完毕,表示安装完成:2.Nginx的http模块需要...

取消回复欢迎 发表评论: