制作linux系统内部yum源仓库

news2025/3/13 15:35:17

需求说明

制作内网linux系统yum源仓库,比较简单的方式就是添加系统镜像,此种yum配置方式可参考文章 https://blog.csdn.net/d1240673769/article/details/108477661

如果无法提供系统镜像,那该如何创建内网的yum源仓库呢?本文提供另一种方式(此种方式需要在能访问公网的环境中配置,配置完成后可转移至内网环境中)

环境准备

本文以 centos7.7 x86 系统为例,为centos7.7系统创建内部yum源仓库。
准备一台可访问公网的centos7.7服务器,系统中yum源默认配置信息如下:
在这里插入图片描述
查看当前系统yum源:
在这里插入图片描述
安装制作yum源仓库需要用到的命令包:

yum -y install yum-utils
yum -y install reposync
yum -y install createrepo

制作yum源

1. 从公网下载源

创建源文件存储的位置,如 /mnt/mirror/x86_64 ,将从公网下载的源文件存在服务器 /mnt/mirror/x86_64 目录下(源文件占用空间较大,建议留足空间,约20G左右)

创建存储目录

mkdir -p /mnt/mirror/x86_64

从公网下载源,通过 reposync 命令

reposync -p /mnt/mirror/x86_64/ 
# 下载过程用时较长,建议挂起运行,nohup reposync -p /mnt/mirror/x86_64/ &

上述命令会默认下载 base 、extras 和 updates 三个目录中的软件包,也可通过下面命令只下载base中的安装包:

# 下载base目录到本地
reposync -r base -p /mnt/mirror/x86_64/ 

下载完成后,会在/mnt/mirror/x86_64/ 目录中生成三个目录:base、extras和updates,如下图:
在这里插入图片描述
每个目录中都有一个 Packages的目录,该目录中为下载的rpm软件包,如下图:
在这里插入图片描述

2. 创建索引

通过 createrepo 命令创建yum源索引

createrepo -po /mnt/mirror/x86_64/base/ /mnt/mirror/x86_64/base/
createrepo -po /mnt/mirror/x86_64/extras/ /mnt/mirror/x86_64/extras/
createrepo -po /mnt/mirror/x86_64/updates/ /mnt/mirror/x86_64/updates/

执行如下图:
在这里插入图片描述
执行完成后,会在每一个目录下生成一个 repodata 目录,如下图:
在这里插入图片描述

3. nginx发布自制yum源

在服务器nginx配置中,增加server配置,如下图:

server {
       listen 9999;
       root /mnt/mirror/;
       location / { 
	        autoindex on; 
	        autoindex_exact_size off; 
	        autoindex_localtime on; 
	        charset utf-8,gbk; 
	        index index.html; 
        }
   }

重启nginx后,访问服务器 9999 端口 /x86_64/ 目录,可访问到yum源软件安装包,如下图:
在这里插入图片描述

在这里插入图片描述

4. 创建其他服务器访问内部的yum源

创建 centos-local.repo ,内容如下:

[base]
name=CentOS-Base
baseurl=http://10.7.2.230:9999/x86_64/base/
gpgcheck=0
enabled=1

# 可以只配置base部分,如需其他部分,也可以加上
[extras]
name=CentOS-Extras
baseurl=http://10.7.2.230:9999/x86_64/extras/
gpgcheck=0
enabled=1

#[updates]
#name=CentOS-Updates
#baseurl=http://10.7.2.230:9999/x86_64/updates/
#gpgcheck=0
#enabled=1

5. 验证

将上述配置上传到235服务器上,如下图:
在这里插入图片描述
清除yum源配置,并重新加载缓存:
在这里插入图片描述
配置完成,此时可通过yum安装内部源中的软件包了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1104041.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

互联网Java工程师面试题·Java 总结篇·第六弹

目录 56、TreeMap 和 TreeSet 在排序时如何比较元素?Collections 工具类中的 sort()方法如何比较元素? 57、Thread 类的 sleep()方法和对象的 wait()方法都可以让线程暂停执行,它们有什么区别? 58、线程的 sleep()方法和 yield()方法有什…

在nodejs中实现双重身份验证机制

在nodejs中实现双重身份验证机制 双重身份验证(Two-factor authentication)是一种安全机制,它要求用户提供两种不同的身份验证因素来访问他们的帐户:密码和发送到他们的移动设备的验证码。在本文中,我们将一步步通过使用speakeasy在nodejs中实…

deforum + kandinsky = 视频工作流

像搭积木一样玩AI,随着模型种类的不断丰富,不同的组合会带来什么惊喜?今天和大家分享最近看到的一个视频工作流(工具箱)。 首先,我们先对deforum和kandinsky做一些基本的介绍: deforum-art/defo…

【论文解读】单目3D目标检测 CUPNet(ICCV 2021)

本文分享单目3D目标检测,CUPNet 模型的论文解读,了解它的设计思路,论文核心观点,模型结构,以及效果和性能。 目录 一、CUPNet简介 二、论文核心观点 三、模型框架 四、损失函数 五、核心观点——3D高度估计误差 引…

Python之并发编程(进程)

文章目录 一、操作系统的发展史二、进程基础(操作系统中的概念)1.什么是进程2.进程的调度算法3.进程的并行与并发4.进程的三状态5.同步异步6.阻塞与非阻塞7.同步异步与阻塞非阻塞综合使用 三、如何创建进程Process的几个方法如何开启多进程进程间的数据默认隔离基于TCP协议的高…

【Qt控件之QButtonGroup】概述及使用

概述 QButtonGroup 类提供了一个容器来组织一组按钮部件。 QButtonGroup 提供了一个抽象容器,可以将按钮部件放置其中。它不提供此容器的可视表示(请参见 QGroupBox,用于容器部件),而是管理组中每个按钮的状态。 一个…

Electron webview 内网页 与 preload、 渲染进程、主进程的常规通信 以及企业级开发终极简化通信方式汇总

Electron 嵌入的页面中注入的是 preload.js 通过在标签中给 prelaod赋值,这里提到了 file://前缀,以及静态目录 static 怎么获取 实际代码,其中__static就是我们存放静态文件的地方,这个 static 是 electron 源代码根目录下的文件…

使用unordered_write调优RocksDB写性能

在使用rocksdb存储的服务中,我们发现QPS在4w/s就怎么调整都上不去了,写性能受到了某种限制。为什么呢?下图描述了rocksdb写入的流程。我们发现 unordered_write true可以提高写入吞吐量。 rocksdb的数据正常写入流程是,多个线程形…

九月 NFT 行业解读:熊市情绪仍占上风

作者: stellafootprint.network 9 月,著名主流媒体《滚石》(Rolling Stone)发表了一篇题为《你的 NFT 实际上——终于——完全不值钱了》(Your NFTs Are Actually — Finally — Totally Worthless)的文章&#xff0c…

【网络编程】从网络编程、TCP/IP开始到BIO、NIO入门知识(未完待续...)

目录 前言前置知识一、计算机网络体系结构二、TCP/IP协议族2.1 简介*2.2 TCP/IP网络传输中的数据2.3 地址和端口号2.4 小总结 三、TCP/UDP特性3.1 TCP特性TCP 3次握手TCP 4次挥手TCP头部结构体 3.2 UDP特性 四、总结 课程内容一、网络通信编程基础知识1.1 什么是Socket1.2 长连…

NumPy基础及取值操作

目录 第1关:ndarray对象 相关知识 怎样安装NumPy 什么是ndarray对象 如何实例化ndarray对象 使用array函数实例化ndarray对象 使用zeros,ones,empty函数实例化ndarray对象 代码文件 第2关:形状操作 相关知识 怎样改变n…

液压自动化成套设备比例阀放大器

液压电气成套设备的比例阀放大器是一种电子控制设备,用于控制液压动力系统中的液压比例阀1。 比例阀放大器通常采用电子信号进行控制,以控制比例阀的开度和流量,以实现液压系统的可靠控制。比例阀放大器主要由以下组成部分: 驱动…

tomcat 服务器

tomcat 服务器 tomcat: 是一个开源的web应用服务器。区别nginx,nginx主要处理静态页面,那么动态请求(连接数据库,动态页面)并不是nginx的长处,动态的请求会交给tomcat进行处理。 nginx-----转发动态请求-…

Golang学习:基础知识篇(三)—— Map(集合)

Golang学习:基础知识篇(三)—— Map集合 前言什么是Golang?Map集合定义 Map综合实例补充 前言 很久之前就想学Go语言了,但是一直有其他东西要学,因为我学的是Java嘛,所以后面学的东西一直是跟J…

Element-UI 日期选择器--禁用未来日期

在做项目的时候经常会遇到一些报表需要填写日期,一般是填写当日及当日以前,这时候我们的日期选择器就需要进行一些限制,比如: 这样之后,就不会误填写到明天啦,下面让我们看一下代码实现 html页面代码 这里…

Unity ECS最新DOTS环境搭建教程

最近DOTS终于发布了正式的版本, 今天我们来基于Unity 2023.1.6来搭建DOTS 1.0.16的开发环境与注意事项。 对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正在从事游戏开发的技术大佬,欢迎你来交流学习。 1…

Liunx C运算符

一、运算符 &#xff08;一&#xff09;算数运算符 1、float和double不能进行取余操作。 &#xff08;二&#xff09;关系运算符 1、逻辑非 2、逻辑与 例子&#xff1a; if(&#xff08;a-1&#xff09;<b&&b) 如果为真则自增&#xff0c;为假不自增 3、逻辑或 …

leaflet 绘制显示半圆形,扇形示例 (134)

第134个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中绘制显示半圆形,扇形 。这里引用了一个插件,非常方便的绘制扇形和半圆形等。 直接复制下面的 vue+leaflet源代码,操作2分钟即可运行实现效果 文章目录 示例效果配置方式示例源代码(共77行)安装插件相…

虚拟内存技术的基本概念(局部性原理,特征,实现)

1.传统存储管理方式的特征、缺点 很多暂时用不到的数据也会长期占用内存&#xff0c;导致内存利用率不高。 1.一次性: 作业必须一次性全部装入内存后才能开始运行。 这会造成两个问题: ①作业很大时&#xff0c;不能全部装入内存&#xff0c;导致大作业无法运行; ②当大量作…

node多版本管理器nvm

node多版本管理器nvm 1、为何要使用node版本管理器2、nvm安装步骤2-1、卸载系统中的node2-2、下载nvm2-3、安装 3、维护node版本3-1、安装指定版本node3-2、查看本机已安装的所有node版本3-3、切换本机node版本 1、为何要使用node版本管理器 在日常开发中&#xff0c;难免会遇…