Centos7通过reposync搭建本地Yum源

news2024/12/23 21:01:00

目录

1. 服务端搭建

1.1. 安装相关软件包

1.2. 加载几个常用的yum源

1.3. 创建文件保存目录

1.4. 把各仓库同步到本地

1.5. 生成仓库信息

1.6. 定时任务更新仓库

1.7. nginx配置下载服务

1.8. 内网测试nginx服务配置是否正确

2. 客户端配置


前言:之前使用rsync同步官方源没问题,但是同步国内的yum源时出现了同步不起的问题,所以改用reposync的方式。

操作系统:centos7.2 x64,2c4G,100G系统盘,500G数据盘。

1. 服务端搭建

1.1. 安装相关软件包

#1 安装相关软件包
yum install nginx yum-utils createrepo -y
systemctl start nginx

1.2. 加载几个常用的yum源

#备份原先的yum源
mkdir -p /etc/yum.repos.d/back && mv /etc/yum.repos.d/* /etc/yum.repos.d/back

#下载centos7源
wget -O /etc/yum.repos.d/Centos-7.repo https://mirrors.aliyun.com/repo/Centos-7.repo

#下载epel源
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

#下载k8s源
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

#下载docker源
wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

#使用yum repolist验证
yum repolist

1.3. 创建文件保存目录

mkdir -p /usr/share/nginx/html/yum

1.4. 把各仓库同步到本地

reposync -r base             -p /usr/share/nginx/html/yum
reposync -r docker-ce-stable -p /usr/share/nginx/html/yum
reposync -r epel             -p /usr/share/nginx/html/yum
reposync -r extras           -p /usr/share/nginx/html/yum
reposync -r updates          -p /usr/share/nginx/html/yum

1.5. 生成仓库信息

createrepo /usr/share/nginx/html/yum/base
createrepo /usr/share/nginx/html/yum/docker-ce-stable
createrepo /usr/share/nginx/html/yum/epel
createrepo /usr/share/nginx/html/yum/extras
createrepo /usr/share/nginx/html/yum/updates

1.6. 定时任务更新仓库

cat <<EOF> /data/yum-update.sh
#!/bin/bash

#同步数据
reposync -r base             -p /usr/share/nginx/html/yum
reposync -r docker-ce-stable -p /usr/share/nginx/html/yum
reposync -r epel             -p /usr/share/nginx/html/yum
reposync -r extras           -p /usr/share/nginx/html/yum
reposync -r updates          -p /usr/share/nginx/html/yum

#更新元数据
createrepo --update /usr/share/nginx/html/yum/base
createrepo --update /usr/share/nginx/html/yum/docker-ce-stable
createrepo --update /usr/share/nginx/html/yum/epel
createrepo --update /usr/share/nginx/html/yum/extras
createrepo --update /usr/share/nginx/html/yum/updates
EOF

#crontab -e
grep yum-update.sh /var/spool/cron/root || echo "0 6 * * * 0 6 * * * /bin/bash /data/yum-update.sh" >> /var/spool/cron/root

1.7. nginx配置下载服务

cat <<EOF> /etc/nginx/conf.d/yum.tom.com.conf 
server {
    listen 80;
    server_name yum.tom.com;
    location / {
        # 启用目录浏览
        autoindex on;
        root /usr/share/nginx/html/yum/;
        # 可选项: 不显示文件的确切大小,而是使用KB, MB等单位
        autoindex_exact_size off;
        # 可选项: 使用服务器本地时间显示文件时间
        autoindex_localtime on;
    }
}
EOF

nginx -t
systemctl restart nginx

curl -H host:yum.tom.com localhost

1.8. 内网测试nginx服务配置是否正确

[root@yum conf.d]# curl -H host:yum.tom.com 10.0.0.81
<html>
<head><title>Index of /</title></head>
<body>
<h1>Index of /</h1><hr><pre><a href="../">../</a>
<a href="base/">base/</a>                                              02-Sep-2024 19:11       -
</pre><hr></body>
</html>

2. 客户端配置

#备份原先的yum源
mkdir -p /etc/yum.repos.d/back && mv /etc/yum.repos.d/* /etc/yum.repos.d/back

#配置yum源为自建地址
cat <<EOF> /etc/yum.repos.d/centos7.repo
[base]
name=CentOS-$releasever - Base
baseurl=http://10.0.0.81/base
enabled=1
gpgcheck=0

[base-ex]
name=CentOS-$releasever - Base-ex
baseurl=http://10.0.0.81/extras
enabled=1
gpgcheck=0

[epel]
name=epel
baseurl=http://10.0.0.81/epel
enabled=1
gpgcheck=0

[docker]
name=docker-ce
baseurl=http://10.0.0.81/docker-ce-stable
enabled=1
gpgcheck=0

[k8s]
name=docker-ce
baseurl=http://10.0.0.81/kubernetes
enabled=1
gpgcheck=0

EOF

#使用yum repolist验证
yum repolist


 

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

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

相关文章

C++STL之list容器:基本使用及模拟实现

目录 有了vector&#xff0c;为何还需list list的使用 1&#xff0c;push_back、push_front、pop_back、pop_front的使用 2&#xff0c;正向、反向、const正向、const反向迭代器的使用 正向、反向迭代器的使用 const正向、const反向迭代器的使用 3&#xff0c;operator …

Datawhale x李宏毅苹果书AI夏令营深度学习详解进阶Task03

在深度学习中&#xff0c;批量归一化&#xff08;Batch Normalization&#xff0c;BN&#xff09;技术是一种重要的优化方法&#xff0c;它可以有效地改善模型的训练效果。本文将详细讨论批量归一化的原理、实现方式、在神经网络中的应用&#xff0c;以及如何选择合适的损失函数…

淘宝商品评论API:获取商品使用场景与评价

淘宝的商品评论API&#xff08;通常通过淘宝开放平台提供&#xff09;允许开发者获取商品的评论信息&#xff0c;包括评价内容、评分、图片等。然而&#xff0c;直接获取特定商品的使用场景&#xff08;即用户如何使用商品的具体描述&#xff09;可能不是所有API都直接提供的&a…

【mysql】mysql目录结构和源码和mysql基础练习

mysql目录结构和源码的说明&#xff1a; 也就是之前说四个位置有提到的两个位置&#xff0c; 1软件安装位置bin 把bin目录加入环境变量就可以直接在命令行调用&#xff0c; "***\MySQL\MySQL Installer for Windows\bin" 2还有一个数据库文件的安装位置 &#…

华为云征文|基于华为云Flexus X实例部署Redis及案例实践详解

目录 前言 一、华为云Flexus X实例购买 1.1 Flexus X实例购买 1.2 登录Flexus X实例 二、Flexus X实例安装宝塔面板 2.1 安装宝塔面板 2.2 开放宝塔面板端口 2.3 登录宝塔面板 三、华为云Flexus X实例部署Redis 3.1 宝塔面板安装Redis 3.2 Redis密码设置及第三方登录 3.3 开放R…

【分立元件】电阻的基础知识

电阻与电容、电感一样都是最基本的元器件,大量使用于各种电气或电子设备中。对从事电气工作的人而言或许过于普通,平时忽视了它,但如果没有电阻,电气或电子电路就无法建立。电阻就是如此重要的元器件。 电阻的原理 电阻的数值取决于电阻材料的电阻率及其截面积和长度。 …

Java 自定义注解实现统一日志记录功能【Java核心技术_二十七】

一、什么是 Java 注解&#xff1f; 想象一下&#xff0c;你正在写一本日记&#xff0c;你可以在某些页面上贴上彩色的便签&#xff0c;上面写着一些关键词或者提醒。在 Java 中&#xff0c;注解就像是这些便签&#xff0c;它可以贴在类、方法、变量等程序元素上&#xff0c;为…

Vue 3 中如何对接高德地图

1. 准备工作 1.1. 获取高德地图 API Key 首先&#xff0c;你需要在高德开放平台注册并获取一个 API Key。访问 高德开放平台 注册并申请。 1.2. 安装依赖 在 Vue 3 项目中使用高德地图&#xff0c;可以通过以下步骤安装依赖&#xff1a; npm install types/amap-js-api --…

5.注册中心的其他实现-Nacos

文章目录 1.Nacos简介2.Nacos的安装2.1Nacos Windows本地启动不成功&#xff1f;2.2Linux环境下载并启动 3. Nacos的使用4.Nacos的负载均衡5.Nacos 健康检查6.Nacos 环境隔离7.Nacos 配置中心7.1为什么需要配置中心7.2 Nacos配置中心使用7.3 Data id7.4Nacos 上Linux部署服务7.…

鹰眼应急实时三维重建装备,高质量交付中!

在《2024年地方应急管理科技信息化任务书》的指导和应急管理万亿国债支撑下&#xff0c;全国各地正积极推进应急管理现代化建设&#xff0c;全力提升“数据汇聚服务能力、监测预警能力、指挥调度能力、支撑保障能力”四项应急管理能力。 制定标准化流程规范&#xff0c;保障交…

计算机毕业设计选题推荐-茶园茶农文化交流平台-Java/Python项目实战

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

分组密码的模式AES-CBC模式流程解析附:应用代码实现

CBC模式&#xff1a;Cipher Block Chaining mode(密码分组链接模式) CBC模式的加解密 CBC模式中&#xff0c;首先将明文分组与前一个密文分组进行XOR运算&#xff0c;然后再进行加密。密文分组像链条一样相互连接在一起。 CBC模式的加密流程图 CBC模式的解密流程图 将一个分…

使用 `wget` 和 `curl` 命令行工具的全面指南

个人名片 &#x1f393;作者简介&#xff1a;java领域优质创作者 &#x1f310;个人主页&#xff1a;码农阿豪 &#x1f4de;工作室&#xff1a;新空间代码工作室&#xff08;提供各种软件服务&#xff09; &#x1f48c;个人邮箱&#xff1a;[2435024119qq.com] &#x1f4f1…

3.3 语法规则

&#x1f393; 微机原理考点专栏&#xff08;通篇免费&#xff09; 欢迎来到我的微机原理专栏&#xff01;我将帮助你在最短时间内掌握微机原理的核心内容&#xff0c;为你的考研或期末考试保驾护航。 为什么选择我的视频&#xff1f; 全程考点讲解&#xff1a;每一节视频都…

Oracle RAC关于多节点访问同一个数据的过程

一、说明 Oracle RAC 存在多个计算节点&#xff0c;但是使用的共享存储。那么多个节点共同访问同一个资源&#xff0c;怎么保证一致性。 白文的逻辑理解简述&#xff1a; 用户1访问rac1 &#xff0c;通过rac1获取AA数据块后&#xff0c;会加上latch锁。用户2通过rac2访问AA数据…

union不能被初始化由于有 non-trivial构造函数

背景 最近遇到一个问题&#xff0c;当定义一个union的时候&#xff0c;发现初始化失败&#xff0c;具体如下&#xff1a; class NonTrivial { public:NonTrivial(const std::string& s) : data(s) {std::cout << "NonTrivial constructed with " <<…

嵌入式OTG硬件电路分析

大家好,今天主要给大家分享一下,如何使用OTG硬件检测电路,和之前的接口有什么区别。 1. OTG接口与转换器 OTG是"On The Go"的英文缩写,字面上可以理解为“安上即可用”。USB传输是主从结构,一切USB传输都有Host发起。比如在开发板上可以插入U盘,这时开发板作为…

计算机毕业设计选题推荐-店铺租赁平台-商铺租赁系统-Java/Python项目实战

✨作者主页&#xff1a;IT研究室✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

【简历】25届武汉某二本JAVA简历:项目描述真是难为学生想这么偏

注&#xff1a;为保证用户信息安全&#xff0c;姓名和学校等信息已经进行同层次变更&#xff0c;内容部分细节也进行了部分隐藏 简历说明 这是一份 25 届武汉某二本学校的JAVA简历。校招第一要点是上来必须先确定自己的求职层次&#xff0c;大中小厂要求不一样。二本同学主体…

Day 10-11:函数、函数传参

基本用法以及传参 基本用法 调用 1.无返回值函数调用 #include<stdio.h> #pragma warning(disable:4996); void my_helloworld() {printf("hello world!"); } int main() {my_helloworld();return 0; } //输出结果&#xff1a;hello world&#xff01;2.实际…