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下载

相关推荐
安顾里31 分钟前
Linux命令-iostat
linux·运维·服务器
100编程朱老师1 小时前
面试:什么叫Linux多路复用 ?
linux·运维·服务器
群联云防护小杜1 小时前
云服务器主动防御策略与自动化防护(下)
运维·服务器·分布式·安全·自动化·音视频
PPIO派欧云1 小时前
PPIO X OWL:一键开启任务自动化的高效革命
运维·人工智能·自动化·github·api·教程·ppio派欧云
miracletiger1 小时前
uv 新的包管理工具总结
linux·人工智能·python
enyp801 小时前
麒麟系统(基于Ubuntu)上使用Qt编译时遇到“type_traits文件未找到”的错误
linux·qt·ubuntu
struggle20252 小时前
LinuxAgent开源程序是一款智能运维助手,通过接入 DeepSeek API 实现对 Linux 终端的自然语言控制,帮助用户更高效地进行系统运维工作
linux·运维·服务器·人工智能·自动化·deepseek
无敌小茶3 小时前
Linux学习笔记之动静态库
linux·笔记
程序员JerrySUN4 小时前
驱动开发硬核特训 · Day 21(上篇) 抽象理解 Linux 子系统:内核工程师的视角
java·linux·驱动开发
雨声不在4 小时前
debian切换用户
linux·服务器·debian