内网YUM源搭建手册(Internal Network yum Source Construction Manual)

内网YUM源搭建手册

一、内网yum源服务器

  • 系统版本``[root@yumsvr ~]# cat /etc/redhat-release ``CentOS Linux release 7.9.2009 (Core)``需要准备一台可以连接外网的Centos7配置阿里yum源,安装阿里云yunm源,检查其可用性。``新建一个目录,将原来默认的repo备份``[root@yumsvr yum.repos.d]# mkdir /old``[root@yumsvr yum.repos.d]# mv *.repo old

二、安装下载外网阿里云YUM源

复制代码
`安装阿里云YUM文件``wget -o /etc/yum.repos.d/CentOSBase.repo https://mirrors.aliyun.com/repo/Centos-7.repo``安装epel源``yum install -y epel-release``清除原有的yum缓存,建立新的yum源的缓存,列出可用repo``yum clean all && yum makecache && yum repolist``安装Nginx服务``yum install -y nginx yum-utils crontabs createrepo  reposync  make cmake gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel``准备数据存储路径,内网源就是把云yum源同步到本地。过程较久,慢慢等##``本文是将云上的rpm包 下载到此目录,请注意考虑/目录大小``reposync -r base``reposync -r extras``reposync -r updates``reposync -r epel `

三、创建仓库索引​​​​​​​

复制代码
`创建本地软件源索引``createrepo -po /etc/yum.repos.d/base/ /etc/yum.repos.d/base/``createrepo -po /etc/yum.repos.d/extras/ /etc/yum.repos.d/extras/``createrepo -po /etc/yum.repos.d/updates/ /etc/yum.repos.d/updates/``createrepo -po /etc/yum.repos.d/epel/ /etc/yum.repos.d/epel/`
四、自动更新数据源
  • 目的:当公网yum源更新的时候,我们需要给本地的软件仓库中的软件包也一起更新``createrepo --update /etc/yum.repos.d/base/``createrepo --update /etc/yum.repos.d/extras/``createrepo --update /etc/yum.repos.d/updates/``createrepo --update /etc/yum.repos.d/epel/``此处需要写一个crontab 定时任务脚本,定期后台自动更新最新的rpm包``vi update.sh``#!/bin/bash``echo "###Update Packages###"``yum update -y``echo "###resync centos7 yum repo###"``reposync -r --repoid=extras --repoid=updates --repoid=base --repoid=epel -p /etc/yum.repos.d``echo "同步centos7yum源完成!"``echo "###开始更新元数据###"``createrepo --update /etc/yum.repos.d/base/``echo "更新base元数据完成···"``createrepo --update /etc/yum.repos.d/extras/``echo "更新extras元数据完成···"``createrepo --update /etc/yum.repos.d/updates/``echo "更新updates元数据完成···"``createrepo --update /etc/yum.repos.d/epel/``echo "更新epel元数据完成···"``echo "###update successful###"``crontab -e``* * * * * /usr/bin/sh /etc/yum.repos.d/update.sh >> /etc/yum.repos.d/updatelog.txt !!! 如果是内网需要将这个目录挪到内网机器上去 !!!
五、启动并配置web服务器
复制代码
`[root@yumsvr ~]# vi /etc/nginx/conf.d/yum.conf``新建Nginx配置文件,allow 和deny 自己看情况``server {``     listen 80;``#     server_name yumsvr;`
`     location /``     {``        root /etc/yum.repos.d;``        autoindex on;``        autoindex_exact_size off;``        autoindex_localtime on;``     }`
`     location /nginx_status``     {``        stub_status on;``        access_log off;``#        allow 172.21.0.0/16;``#        deny all;``     }``}``重启Nginx服务``systemctl resntart nginx``systemctl enable nginx`
六、编写yum本地源客户端的yum配置文件
复制代码
`cd /etc/yum.repos.d``vi CentOS-Internal.repo``# CentOS-Internal.repo``[base-internal]``name=CentOS-$releasever - Base - http://172.21.X.X``baseurl=http://172.21.X.X/base``gpgcheck=0``enable=1`
`#released updates``[updates-internal]``name=CentOS-$releasever - updates - http://172.21.X.X``baseurl=http://172.21.X.X/updates``gpgcheck=0``enable=1`
`#released extras``[extras-internal]``name=CentOS-$releasever - extras - http://172.21.X.X``baseurl=http://172.21.X.X/extras``gpgcheck=0``enable=1`
`[epel-internal]``name=CentOS-$releasever - epel - http://172.21.X.X``baseurl=http://172.21.X.X/epel``gpgcheck=0``enable=1`
七、验证

验证nginx 是否可以正常打开访问

复制代码
`web 访问``其他客户端使用此源命令:``cd /etc/yum.repos.d``yum clean all``wget http://172.21.X.X/CentOS-Internal.repoyum repolist `
相关推荐
kloc13 分钟前
聊天室项目入口网关子服务的实现
linux·c++
GeW18 分钟前
深圳APEC峰会倒计时:数据库与Linux运维的"隐形考场"
linux
梦到啥说啥2 小时前
Linux网络编程:UDP网络协议
linux·网络协议·udp
鸿蒙开发爱好者2 小时前
下班后做的小工具和小游戏,我把它们整理成了 WyanHub
网络·人工智能·职场和发展·个人开发
乐橙开放平台3 小时前
海康和大华摄像头能统一管理吗?可以通过 GB28181 或视频融合平台接入
网络·后端·物联网·音视频
无足鸟ICT3 小时前
【RHCA+】ipcrm命令(删除IPC资源)
linux
星恒随风4 小时前
MySQL 从零入门(四):表的增删改查与基础查询详解
linux·服务器·数据库·笔记·mysql
张小姐的猫4 小时前
【基于 WebSocket 的多用户网页五子棋】—— 项目结构设计与实用工具类模块
网络·websocket·网络协议
QXWZ_IA5 小时前
测绘单位采购RTK:设备价格、账号年费、售后,用时间轴分权重
网络·人工智能·安全
IT大白鼠7 小时前
GitLab 未认证 RCE 应急实战CVE-2026-97229(CVSS 10.0)
网络·安全·gitlab