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

发布时间 - 2025-08-27 00:00:00    点击率:
安装createrepo工具并创建RPM包目录;2. 将RPM包复制到指定目录;3. 使用createrepo生成元数据;4. 配置本地YUM源文件;5. 清理缓存并验证源可用性,可对外发布为HTTP服务。

在Linux中搭建本地YUM仓库,主要是通过

createrepo
工具生成RPM包的元数据,使系统可以通过YUM命令安装和管理这些软件包。整个过程不复杂,适合内网环境或离线部署场景。

安装createrepo工具

createrepo是生成YUM仓库元数据的核心工具,大多数Linux发行版都可通过默认源安装。

  • CentOS/RHEL系统执行:

yum install -y createrepo

  • 若使用较新版本(如CentOS 8或RHEL 8以上),推荐使用dnf:

dnf install -y createrepo

准备RPM包存放目录

选择一个目录用于存放RPM包,比如

/data/yum-repo

mkdir -p /data/yum-repo

将需要的RPM包复制到该目录,例如:

cp *.rpm /data/yum-repo/

确保目录中只包含合法的RPM文件,避免杂乱文件影响元数据生成。

生成仓库元数据

进入RPM包目录,运行createrepo命令生成repodata:

createrepo /data/yum-repo/

首次执行会扫描所有RPM包并生成XML格式的元数据,存放在

repodata/
子目录中。

如果后续添加了新RPM包,可更新元数据:

createrepo --update /data/yum-repo/

这样只重新处理新增或变更的包,提升效率。

配置本地YUM源文件

/etc/yum.repos.d/
目录下创建一个repo文件,例如
local.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协议指向本地路径,也可用http://或ftp://对外提供服务
  • enabled=1:启用该源
  • gpgcheck=0:关闭GPG校验(测试环境可关闭,生产建议开启并配置GPG密钥)

验证YUM源是否可用

清除YUM缓存并重建元数据索引:

yum clean all

yum makecache

列出可用包确认仓库生效:

yum list available --disablerepo=\* --enablerepo=local-repo

尝试安装一个存在于仓库中的软件包进行测试:

yum install 包名 -y

基本上就这些。只要RPM包完整、路径配置正确、元数据生成无误,本地YUM源就能稳定工作。如需对外提供服务,可将目录通过Nginx或Apache发布为HTTP源,只需把baseurl改为http地址即可。不复杂但容易忽略细节,比如SELinux权限或防火墙设置。


# linux  # centos  # apache  # nginx  # 工具  # ai  # dnf  # xml  # vim  # http  # 软件包  # 离线  # 放在  # 就能  # 首次  # 目录中  # 只需  # 推荐使用  # 可用性  # 可以通过 


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


相关推荐: 如何在香港免费服务器上快速搭建网站?  如何用ChatGPT准备面试 模拟面试问答与职场话术练习教程  如何用花生壳三步快速搭建专属网站?  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  利用vue写todolist单页应用  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  重庆市网站制作公司,重庆招聘网站哪个好?  如何在万网主机上快速搭建网站?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  教你用AI润色文章,让你的文字表达更专业  javascript如何操作浏览器历史记录_怎样实现无刷新导航  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  如何在 Pandas 中基于一列条件计算另一列的分组均值  如何在景安云服务器上绑定域名并配置虚拟主机?  Laravel如何使用查询构建器?(Query Builder高级用法)  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  图册素材网站设计制作软件,图册的导出方式有几种?  详解Huffman编码算法之Java实现  如何快速上传自定义模板至建站之星?  网站图片在线制作软件,怎么在图片上做链接?  java中使用zxing批量生成二维码立牌  Linux系统命令中tree命令详解  标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南  佛山企业网站制作公司有哪些,沟通100网上服务官网?  如何在Windows 2008云服务器安全搭建网站?  Laravel如何使用Seeder填充数据_Laravel模型工厂Factory批量生成测试数据【方法】  Swift中swift中的switch 语句  宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  高防服务器租用如何选择配置与防御等级?  简单实现Android文件上传  Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  Windows Hello人脸识别突然无法使用  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解  如何在建站主机中优化服务器配置?  如何快速生成凡客建站的专业级图册?  如何在阿里云通过域名搭建网站?  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  如何用景安虚拟主机手机版绑定域名建站?  如何用腾讯建站主机快速创建免费网站?  如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】  如何用y主机助手快速搭建网站?  微信小程序 闭包写法详细介绍  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  香港服务器选型指南:免备案配置与高效建站方案解析  如何在IIS中新建站点并配置端口与物理路径?  怎样使用JSON进行数据交换_它有什么限制