createrepo:创建本地源

简介:

createrepo:创建本地源

repodata作为软件的仓库,其目录下有四个必要文件:filelists.xml.[gz]other.xml.[gz]primary.xml.[gz]repomd.xml(md 意思是 metadata),其中最主要的是repomd.xml文件。一般出现的找不到repodata目录或文件的错误的原因通常有三个:一是路径问题;二是没有生成repodate目录;三是*.repo配置文件冲突(这个需要特意注意)。

创建本地源步骤如下:

1、安装createrepo包;
2、新建本地源目录(假若本地源在当前家目录下)
   2.1 $mkdir -p local-yum/i386/       #其中i386是包放置目录
   2.2 将安装包放置到i386目录中
   2.3 createrepo local-yum/           #创建一个源

3、配置yum源(可以单独新建一个repo文件,也可以添加到已经存在的repo文件中)
************************************************************
[local-yum]
name=local-yum
baseurl=file:///home/test/local-yum/               #文件目录不能设置到i386,否则本地源使用会报错
enabled=1
gpgcheck=0

解释:
[....]     代表这个库的名字,必须是唯一的,不可以重复。
name=     是这个库的说明,没有太大的实际意义,只是一个字段说明。
baseurl=  说明采取什么方式传输,具体路径在哪里,可以使用的方式有,file://,ftp://,http://等
enabled=1  说明启用这个更新库,0表示不启用。
gpgcheck=1 表示使用gpg文件来检查软件包的签名
gpgkey=    表示gpg文件所存放的位置,此处也可以有http方式的位置。
************************************************************

4、yum工具介绍
   yum工具有很多的参数可供使用,如下:
        yum install 软件名1 [软件名2] [...]
        yum update [软件名1][软件名2] [...]
        yum check-update
        yum upgrade [软件1] [软件2] [...]
        yum remove | erase 软件名1 [软件名2] [...]
        yum list [...]
        yum info [...]
        yum provides | whatprovides feature1 [feature2] [...]
        yum clean [ packages | headers | metadata | dbcache | all ]
        yum makecache
        yum groupinstall 软件组1 [软件组2] [...]
        yum groupupdate 软件组1 [软件组2] [...]
        yum grouplist [hidden] [groupwildcard] [...]
        yum groupremove group1 [group2] [...]
        yum groupinfo 软件组名 [...]
        yum search 字符串1 [字符串2] [...]
        yum shell [文件名]
        yum resolvedep 依赖关系1 [依赖关系2] [...]
        yum localinstall rpm包1 [rpm包2] [...]
        yum localupdate rpm包1 [rpm包2] [...]
        yum reinstall 软件包1 [软件包2] [...]
        yum downgrade 软件包1 [软件包2] [...]
        yum deplist 软件包1 [软件包2] [...]
        yum repolist [all|enabled|disabled]
        yum help [command]
    以上就是yum全部的可用参数了,自动分析依赖性关系是它最好的一个特点,也是目前最方便的安装方法。

5、更新本地源,在仓库所在目录下
   createrepo --update local-yum/          # 更新本地源
   createrepo local-yum/                   # 重新生成metadata

6、用的上的命令

      createrepo --update: 
   有时候你的软件仓库中含有很多的软件包,虽然只是其中的一小部分有所改动但是你却不必为每个软件包重新产生元数据,这样做明显太浪费时间了
。这就是--update 选项诞生的原因。
   像之前一样运行
 createrepo 命令但是添加了--update 选项.

       $createrepo --update local-yum/

   现在 createrepo 只更新那些在上次产生元数据之后被改变,添加或者删除了的项目.


      verifytree 

   如果你刚刚做了一个 repo 并且你想要验证在你的 repo 中的所有东西都是正确且可以完成其功能的话,你可以运行 erifytree 命令来检查所有的 repodata 和软件包。

7、创建基于html的更新源
   7.1 安装httpd安装包
   7.2 如上创建本地更新源
       cd /var/www/html/
       mkdir -p nsmc
       cd
 nsmc
       mkdir RPMS SRPMS
   7.3 拷贝相关文件到
RPMS和SRPMS目录中
   7.4 在nsmc所在目录下执行如下命令
       createrepo nsmc           #创建仓库
   7.5 service httpd start       #启动httpd守护进程,这是关键地方之一,否则在其他机器上会提示找不到相关源
   7.6 编写repo文件
*************************************
[nsm]
name=NeoShine Linux Desktop 5 nsmc repo - i386
baseurl=http://xxx.xxx.xxx.xxx/nsmc
enabled=1
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-neoshine-release

注意:
gpgcheck设置为0,则不需要认证签名。










本文转自 yntmdr 51CTO博客,原文链接:http://blog.51cto.com/yntmdr/1716197,如需转载请自行联系原作者
目录
相关文章
|
网络协议 Linux 网络安全
openstack 云平台一体化部署(超详细)
openstack 云平台一体化部署(超详细)
2563 0
openstack 云平台一体化部署(超详细)
|
安全 物联网 项目管理
RISC-V生态全景解析(四):玄铁VirtualZone基于RISC-V架构的安全扩展
芯片开放社区(OCC)面向开发者推出RISC-V系列内容,通过多角度、全方位解读RISC-V,系统性梳理总结相关理论知识,构建RISC-V知识图谱,促进开发者对RISC-V生态全貌的了解。
2454 0
RISC-V生态全景解析(四):玄铁VirtualZone基于RISC-V架构的安全扩展
|
11月前
|
运维 监控 安全
阿里云SSL证书免费版与收费版有什么区别?免费版SSL证书申请及部署流程参考
在当今数字化时代,网站安全已成为每个网站运营者不可忽视的重要环节。阿里云数字证书管理服务为不同规模的网站提供了多种SSL证书类型和品牌,包括但不限于电商、小型企业、大型企业或个人等。这些SSL证书不仅能有效保护网站数据传输安全,还能提升用户对网站的信任度。本文将详细解析阿里云SSL证书的免费版与收费版之间的差异,并提供选购指南及申请流程,帮助您根据网站规模和业务需求选择最适合的证书。
|
缓存 安全 Linux
本地YUM源大揭秘:搭建您自己的Linux软件宝库,从此告别网络依赖!一文掌握服务器自给自足的终极技能!
【8月更文挑战第13天】在Linux中,YUM是一款强大的软件包管理工具,可自动处理依赖关系。为适应离线或特定安全需求,本指南教你搭建本地YUM源。首先创建存放软件包的`localrepo`目录,复制`.rpm`文件至其中。接着,安装并运用`createrepo`生成仓库元数据。随后配置新的`.repo`文件指向该目录,并禁用GPG检查。最后,清理并重建YUM缓存,即可启用本地YUM源进行软件搜索与安装,适用于网络受限环境。
1781 3
|
Linux
PXE+Kickstart实现rocky9批量自动装机
使用PXE+Kickstart实现rocky9批量自动装机
3392 0
|
缓存 Linux
解决CentOS 7停止更新后yum源失效问题【图文教程】
以上步骤完成后,你的 CentOS 7 系统就会使用阿里云的 yum 源,更换yum以后就可以正常使用啦。
15590 2
|
Shell
[shell]在curl测试的data参数中引用变量
[shell]在curl测试的data参数中引用变量
924 1
|
物联网 SDN 网络虚拟化
VXLAN:彻底改变网络虚拟化
【7月更文挑战第3天】
1463 0
VXLAN:彻底改变网络虚拟化
|
存储 Java 定位技术
【Java】根据IP地址获取省市
【Java】根据IP地址获取省市
1724 1
|
JSON API 数据库
Django的web框架Django Rest_Framework精讲(一)
Django的web框架Django Rest_Framework精讲(一)
925 1