如何在Linux中搭建本地仓库 Linux createrepo创建yum源

发布时间 - 2025-08-30 00:00:00    点击率:
安装createrepo工具并创建本地仓库目录,将RPM包放入;2. 使用createrepo生成元数据,可选添加分组信息;3. 配置本地repo文件指向目录;4. 清理缓存并测试安装;5. 可选通过HTTP共享仓库。

如何在Linux中搭建本地Yum仓库(使用createrepo创建本地源)

在内网环境或离线服务器中,搭建本地Yum源可以极大简化软件包的安装与管理。通过

createrepo
工具生成元数据,我们可以将本地目录变为可被yum识别的软件源。

1. 准备工作:安装createrepo工具

确保系统已安装

createrepo
,它用于生成Yum仓库所需的元数据文件。

在CentOS/RHEL系统中运行:

yum install -y createrepo

如果系统未联网,需提前下载

createrepo
及其依赖(如
python-deltarpm
delog
等),手动安装。

2. 创建本地仓库目录并放入RPM包

选择一个目录作为本地仓库的根目录,例如

/data/yum-repo

mkdir -p /data/yum-repo

将需要的RPM包复制到该目录中:

cp /path/to/your/rpms/*.rpm /data/yum-repo/

也可以挂载ISO镜像获取基础包:

mount /dev/cdrom /mnt
cp /mnt/Packages/*.rpm /data/yum-repo/

3. 使用createrepo生成元数据

进入仓库目录,运行

createrepo
命令生成repodata:

createrepo /data/yum-repo/

首次创建会扫描所有RPM包并生成索引文件。若后续添加了新包,可更新元数据:

createrepo --update /data/yum-repo/

支持分组信息(可选):若想支持

yum groupinstall
,需提供
comps.xml
文件(通常从ISO的repodata中提取):

createrepo -g /data/yum-repo/repodata/comps.xml /data/yum-repo/

4. 配置本地Yum源文件

在客户端或本机的

/etc/yum.repos.d/
目录下创建repo文件:

vim /etc/yum.repos.d/local.repo

写入以下内容:

[local-repo]
name=Local Yum Repository
baseurl=file:///data/yum-repo
enabled=1
gpgcheck=0

说明:

  • baseurl:使用
    file://
    协议指向本地路径
  • gpgcheck=0:关闭GPG校验(若未导入GPG密钥)
  • 如需启用GPG,可设置
    gpgcheck=1
    并指定
    gpgkey

5. 测试本地Yum源

清除缓存并重建元数据:

yum clean all
yum makecache

列出可用包或安装测试:

yum list available | grep your-package-name
yum install your-package -y

若看到来自

local-repo
的包,说明配置成功。

6. (可选)通过HTTP/FTP共享仓库

若想让多台机器使用该仓库,可通过Web服务共享:

yum install -y httpd
systemctl start httpd
ln -s /data/yum-repo /var/www/html/yum

其他机器配置repo时使用:

baseurl=http://your-server-ip/yum

基本上就这些。只要RPM包齐全,元数据正确,本地Yum源就能稳定工作,特别适合无外网环境的批量运维。注意定期更新repodata,保持仓库同步。


# linux  # python  # centos  # html  # 工具  # ai  # 本地仓库 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  Python图片处理进阶教程_Pillow滤镜与图像增强  如何在宝塔面板创建新站点?  如何自定义建站之星模板颜色并下载新样式?  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  如何用y主机助手快速搭建网站?  免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  HTML5空格和margin有啥区别_空格与外边距的使用场景【说明】  教你用AI将一段旋律扩展成一首完整的曲子  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  Laravel安装步骤详细教程_Laravel环境搭建指南  如何为不同团队 ID 动态生成多个非值班状态按钮  如何用PHP快速搭建CMS系统?  php打包exe后无法访问网络共享_共享权限设置方法【教程】  如何快速配置高效服务器建站软件?  手机软键盘弹出时影响布局的解决方法  linux top下的 minerd 木马清除方法  简历在线制作网站免费版,如何创建个人简历?  Laravel用户密码怎么加密_Laravel Hash门面使用教程  Laravel如何配置Horizon来管理队列?(安装和使用)  免费视频制作网站,更新又快又好的免费电影网站?  海南网站制作公司有哪些,海口网是哪家的?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  Laravel如何升级到最新版本?(升级指南和步骤)  Laravel如何操作JSON类型的数据库字段?(Eloquent示例)  如何在 React 中条件性地遍历数组并渲染元素  如何基于PHP生成高效IDC网络公司建站源码?  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  Laravel如何与Vue.js集成_Laravel + Vue前后端分离项目搭建指南  如何在七牛云存储上搭建网站并设置自定义域名?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  EditPlus中的正则表达式 实战(4)  jquery插件bootstrapValidator表单验证详解  简单实现Android文件上传  Laravel怎么上传文件_Laravel图片上传及存储配置  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  高性能网站服务器部署指南:稳定运行与安全配置优化方案  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  如何用免费手机建站系统零基础打造专业网站?  厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?  Claude怎样写约束型提示词_Claude约束提示词写法【教程】  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  Laravel怎么解决跨域问题_Laravel配置CORS跨域访问  千库网官网入口推荐 千库网设计创意平台入口  LinuxCD持续部署教程_自动发布与回滚机制