内网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 `
相关推荐
DjangoJason1 分钟前
操作系统 :进程概念
linux·笔记·ubuntu
dessler21 分钟前
Kubernetes(k8s)-隔离(Cordon)和驱逐(Drain)
linux·运维·kubernetes
青靴34 分钟前
计算机网络 用deepseek帮助整理的复习资料(一)
网络·计算机网络
浩浩测试一下42 分钟前
网络安全之超强Linux信息收集:渗透测试与应急响应的基石(命令超强集合工作手册)
linux·运维·服务器·安全·web安全·网络安全·系统安全
GISer_Jing1 小时前
前端常问的宏观“大”问题详解(二)
linux·前端·ubuntu
带鱼吃猫1 小时前
Linux系统:进程状态与僵尸、孤儿进程
linux·服务器
qq_570416301 小时前
Posix API与网络协议栈第一篇
网络·网络协议
酥暮沐1 小时前
华为交换综合实验——VRRP、MSTP、Eth-trunk、NAT、DHCP等技术应用
网络·智能路由器·hcip
郝晨妤2 小时前
【鸿蒙5.0】向用户申请麦克风授权
linux·服务器·前端·华为·harmonyos·鸿蒙
致良知云2 小时前
elasticsearch-7.17.16阿里云部署
elasticsearch·阿里云·jenkins