Createrepo是linux下的创建仓库的软件包。create是创建的意思,repo是repository的缩写,是仓库的意思。
yum(Yellow dog Updater,Modified)主要的功能是方便添加、删除和更新rpm软件包。可以解决软件包依存问题,更便于管理大量的系统更新问题。它可以同时配置多个仓库或叫资源库(repository),就是存放更新和依存的软件包的地方。
repodata作为软件的仓库,其目录下有四个必要文件:filelists.xml.[gz],other.xml.[gz],primary.xml.[gz]和repomd.xml(md 意思是 metadata),其中最主要的是repomd.xml文件。一般出现的找不到repodata目录或文件的错误的原因通常有三个:一是路径问题;二是没有生成repodate目录;三是*.repo配置文件冲突(这个需要特意注意)

语法

createrepo [option] <directory>

安装

wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/deltarpm-3.6-3.el7.x86_64.rpm?spm=a2c6h.25603864.0.0.2ac12137faCILJ -O deltarpm-3.6-3.el7.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/libxml2-python-2.9.1-6.el7.5.x86_64.rpm?spm=a2c6h.25603864.0.0.2ac12137faCILJ -O libxml2-python-2.9.1-6.el7.5.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/libxml2-2.9.1-6.el7.5.x86_64.rpm -O libxml2-2.9.1-6.el7.5.x86_64.rpm
wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/createrepo-0.9.9-28.el7.noarch.rpm?spm=a2c6h.25603864.0.0.2ac12137faCILJ -O createrepo-0.9.9-28.el7.noarch.rpm
wget https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/python-deltarpm-3.6-3.el7.x86_64.rpm?spm=a2c6h.25603864.0.0.2ac12137faCILJ  -O python-deltarpm-3.6-3.el7.x86_64.rpm

参数选项说明

-u  --baseurl <url>                指定Base URL的地址
-o --outputdir <url>          指定元数据的输出位置
-x --excludes <packages>      指定在形成元数据时需要排除的包
-i --pkglist <filename>指定一个文件,该文件内的包信息将被包含在即将生成的元数据中,格式为每个包信息独占一行,不含通配符、正则,以及范围表达式。
-n --includepkg                 通过命令行指定要纳入本地库中的包信息,需要提供URL或本地路径。
-q --quiet                      安静模式执行操作,不输出任何信息。
-g --groupfile <groupfile>      指定本地软件仓库的组划分,范例如下:createrepo -g comps.xml /path/to/rpms 注意:组文件需要和rpm包放置于同一路径下。
-v --verbose                    输出详细信息。
-c --cachedir <path>          指定一个目录,用作存放软件仓库中软件包的校验和信息。当createrepo在未发生明显改变的相同仓库文件上持续多次运行时,指定cachedir会明显提高其性能。
--update                        如果元数据已经存在,且软件仓库中只有部分软件发生了改变或增减,则可用update参数直接对原有元数据进行升级,效率比重新分析rpm包依赖并生成新的元数据要高很多(常用)       createrepo --update 目标地址
-p --pretty                     以整洁的格式输出xml文件。
-d --database                   该选项指定使用SQLite来存储生成的元数据,默认项。

举例

使用父目录中的 repo-group.xml 作为 groupfile,在当前目录/或子目录中查找 rpm 包,在当前目录下生成 repodata 目录和数据

createrepo -g ../repo-group.xml .

初始化源目录,产生repodata:

[root@master ~]# createrepo -pd  -o ./目标地址/ ./源地址/
Sqlite DBs complete

What you have to do is that others can’t change, then you can’t do who to blame, is your own useless!

Linux CreateRepo创建Repomd (xml-rpm-metadata)存储库相关推荐

  1. linux git reposi,关于linux:GitLab:无法从远程存储库读取

    我创建了项目并添加了ssh-key(都通过webinterface),但是当我尝试向存储库中推送内容时,出现此错误:"无法从存储库读取". 这可能是由于以下事实:.git-proj ...

  2. AIX 如何在 IBM AIX 上配置 YUM 并创建本地存储库

    文章目录 一.如何在 IBM AIX 上配置 YUM 并创建本地存储库 1. 相关基础 1.1 什么是aix系统 2. aix系统上安装yum命令 3. 创建一个本地的 YUM 存储库步骤 二.参考 ...

  3. musescore源码_如何使用MuseScore在Linux上创建乐谱

    musescore源码 上个月,D Ruth Bavousett撰写了有关使用Lilypond "音乐雕刻程序"创建乐谱的信息 ,这让我想到了MuseScore(她在文章中也提到过 ...

  4. git bitbucket_如何在Bitbucket上创建新的Git存储库并查看提交的对象

    git bitbucket For the purpose of this article, Bitbucket is chosen as a Git hosting service. In orde ...

  5. Spring Data Solr教程:向所有存储库添加自定义方法

    如果我们在现实生活中的软件项目中使用Spring Data Solr,很可能我们迟早会遇到一个要求,该要求指出我们的应用程序必须能够与本地Solr服务器和SolrCloud进行通信 . 目前,满足此要 ...

  6. dnf台服升级mysql_MySQL Yum存储库 安装、升级、集群

    添加MySQL Yum存储库 首先,将MySQL Yum存储库添加到系统的存储库列表中.按着这些次序: 选择并下载适用于您的平台的发行包. 使用以下命令安装下载的发行包,替换platform-and- ...

  7. mysql 升级到集群_MySQL Yum存储库 安装、升级、集群

    添加MySQL Yum存储库 首先,将MySQL Yum存储库添加到系统的存储库列表中.按着这些次序: 选择并下载适用于您的平台的发行包. 使用以下命令安装下载的发行包,替换platform-and- ...

  8. 将现有Git存储库推送到SVN

    我一直在用Git完成所有工作并推送到GitHub. 我对软件和网站都非常满意,我不想在此时改变我的工作方式. 我的博士生顾问要求所有学生将他们的工作保存在大学托管的SVN存储库中. 我已经找到大量关于 ...

  9. 在github上托管Maven存储库

    本文翻译自:Hosting a Maven repository on github I have a fork of a small open sourced library that I'm wo ...

最新文章

  1. Xamarin Visual Studio提示找不到AssemblyAttributes.cs文件
  2. Linux centos 集群下ssh无密码
  3. Linux上怎样实现文件夹重命名
  4. Android自定义控件实现九宫格解锁
  5. Elasticsearch java api 基本搜索部分详解
  6. c#中事件注册多个委托并获取委托列表
  7. 超级强大的心理定律~~!你可以变成你想要的样子!~
  8. PHP笔记-学生成绩例子
  9. 学习Spring Security
  10. linux的8小时差问题解决
  11. python中的return的返回与执行
  12. hihocoder 1449 : 后缀自动机三·重复旋律6(后缀自动机)
  13. Portlet开发指南第三章
  14. Google 应用与游戏出海 7 月刊: 创意工具,让应用大放异彩
  15. 【计算机网络微课堂】1.3 三种交换方式:电路交换、分组交换和报文交换
  16. u盘写保护+计算机管理,电脑如何去除u盘写保护?
  17. 启发式算法(Heuristic)概述
  18. Android状态栏添加QS快捷开关
  19. Pyinstaller的Spec文件用法
  20. 2019 Q1数字钱包行业报告 | TokenInsight

热门文章

  1. 在python中get是什么意思_python get函数有什么作用?示例解析
  2. ./config.status --recheck 而发现的error的根因与解决方案
  3. word中如何将所有一级标题统一格式(转载)
  4. 蓝桥杯第十届国赛C++研究生组 试题 A: 三升序列
  5. 谷歌AAB 安装到手机或者模拟器上
  6. 为什么很多公司都在招测试开发?
  7. 邮票的制作(1.主要画笔工具2.钢笔工具)
  8. 【操作指导 | 代码实现】挑战程序设计竞赛2:算法和数据结构
  9. C语言 第六章 多重循环
  10. android与ios ui切图关系,iOS、Android 开发单位换算及 UI 切图要求