centos搭建yum源

目录

1.createrepo简介

2.repo搭建思路

3.安装

4.使用


1.createrepo简介

createrepo 是一个用于创建 RPM 包的工具,它可以帮助你创建一个本地的 YUM 仓库。createrepo 并不是用于运行 YUM 仓库服务的软件,而是用来生成仓库的元数据,使得 YUM 可以理解和使用这个仓库。

2.repo搭建思路

如果你想要运行一个 YUM 仓库服务,你需要使用如 Apache 或 Nginx 这样的 HTTP 服务器来托管你的仓库。以下是一个基本的设置步骤:

  1. 安装 createrepo 和一个 HTTP 服务器(例如 Apache)。

  2. 创建你的仓库目录并添加 RPM 包。

  3. 使用 createrepo 生成仓库元数据。

  4. 配置 HTTP 服务器来托管你的仓库。

  5. 客户端配置 YUM 仓库并测试。

3.安装

复制代码
# 安装createrepo和httpd
sudo yum install -y createrepo httpd
 
# 创建仓库目录
mkdir -p /data/repo

#下载yumdownloader 
yum install yum-utils -y

#离线下载rpm包,--resolve下载依赖
yumdownloader --resolve --destdir=/data/repo/ httpd
#或者如此离线下载包
yum install -y libmetalink --downloaddir=/data/repo/ --downloadonly


# 在仓库目录中生成元数据
cd /data/repo
createrepo .
 
# 配置Apache来托管仓库
sudo vi /etc/httpd/conf/httpd.conf

...
DocumentRoot "/data"

<Directory "/data/repo">
   Options Indexes FollowSymLinks
   AllowOverride None
   Require all granted
</Directory>
...

# 确保有以下行,然后重启Apache
sudo systemctl restart httpd
 
# 客户端配置(假设你的服务器IP是192.168.1.100)
sudo vi /etc/yum.repos.d/myrepo.repo
# 添加以下内容
[myrepo]
name=My Repository
#如果只是本服务器使用可以不用httpd apache服务,这里直接写成file:///data/repo/就好了,安装用yum安装就好了
baseurl=http://192.168.1.100/repo
enabled=1
gpgcheck=0
 
# 清除缓存并测试仓库
sudo yum clean all
sudo yum repolist

centos开启端口:

复制代码
 firewall-cmd --add-port=80/tcp --permanent
 firewall-cmd --reload

或者关闭防火墙

4.使用

客户端服务器配置:

复制代码
# 客户端配置(假设你的服务器IP是192.168.1.100)
sudo vi /etc/yum.repos.d/myrepo.repo
# 添加以下内容
[myrepo]
name=My Repository
#如果只是本服务器使用可以不用httpd apache服务,这里直接写成file:///data/repo/就好了,安装用yum安装就好了
baseurl=http://192.168.1.100/repo
enabled=1
gpgcheck=0
 
# 清除缓存并测试仓库
sudo yum clean all
sudo yum repolist

或者 访问地址:http://192.168.1.100/repo下载

相关推荐
weixin_462446232 小时前
ubuntu/kali安装k8s
linux·ubuntu·kubernetes
lys_8283 小时前
【linux】解决NAT模型下使用Xshell连接虚拟机显示22端口connection failed问题
linux·运维·服务器
Mxsoft6193 小时前
电力系统智能运维网络安全威胁检测与防御策略
运维·安全·web安全
序属秋秋秋4 小时前
《Linux系统编程之系统导论》【冯诺依曼体系结构 + 操作系统基本概述】
linux·运维·服务器·c语言·ubuntu·操作系统·冯诺依曼体系结构
她说彩礼65万5 小时前
C# 特性详解
linux·服务器·c#
LSL666_7 小时前
5 Repository 层接口
android·运维·elasticsearch·jenkins·repository
Hi202402179 小时前
消除FFmpeg库的SONAME依赖
linux·ffmpeg
电棍2339 小时前
在docker a100云服务器运行vulkan->sapien->robotwin的经验(报错segmentation fault)
运维·docker·容器
gfanbei10 小时前
ARM V8 Cortex R52 上电运行在什么状态?— Deepseek 解答
linux·arm开发·嵌入式硬件
liu****11 小时前
14.日志封装和线程池封装
linux·开发语言·c++