麒麟系统V10 SP2 createrepo 更新rpm 软件包仓库 repodata

2022-11-19 09:45:49 浏览数 (1)

createrepo

createrepo 命令用于创建 yum 源(软件仓库),即为存放于本地特定位置的众多 rpm 包建立索引,描述各包所需依赖信息,并形成元数据。

mount命令挂载iso镜像文件

代码语言:javascript复制
mount  -o loop /mnt/Kylin-Server-10-SP2-x86-Release-Build09-20210524.iso  /mnt/iso/

iso 镜像文件目录

代码语言:javascript复制
ls -ll
total 521
drwxr-xr-x 3 root root   2048 Aug  9  2021 EFI
drwxr-xr-x 3 root root   2048 Aug  9  2021 images
drwxr-xr-x 2 root root   2048 Aug  9  2021 isolinux
drwxr-xr-x 2 root root   2048 Aug  9  2021 manual
drwxr-xr-x 2 root root 518144 Aug  9  2021 Packages
drwxr-xr-x 2 root root   4096 Aug  9  2021 repodata
-r--r--r-- 1 root root   2448 Aug  9  2021 TRANS.TBL

Packages为rpm包所在的目录,repodata为repo源元数据所在的目录

创建本地repo目录media

代码语言:javascript复制
mkdir -p /mnt/media

拷贝iso镜像Packages和repodata 目录至本地repo目录media

代码语言:javascript复制
cp -r /mnt/iso/Packages /mnt/media
cp -r /mnt/repodata /mnt/media

添加第三方rpm软件包

由于原有iso镜像文件缺少第三方rpm包,需要拷贝第三方rpm包到Packages目录。createrepo命令更新软件仓

代码语言:javascript复制
yum install createrepo
createrepo --update --workers=10 /srv/repo

--update表示更新,--workers表示线程数

-g 指定组依赖xml文件(推荐)

createrepo -g 832d3331ae911c847037184bca5d869b254d6700d6bb907e29f07e9b323ec712-kylin-v10sp2-x86_64-normal.xml --update --workers=10 /mnt/media/

注意:组依赖xml文件默认在repodata目录下,如不指定组依赖文件则无法使用相关组文r软件包

使用repo源

repo可配置为yum源,yum(全称为 Yellow dog Updater, Modified)是一个Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载和安装。

repo配置为yum源

构建好的repo可以配置为yum源使用,在/etc/yum.repos.d/目录下创建***.repo的配置文件(必须以.repo为扩展名)

配置本地yum源

在/etc/yum.repos.d目录下创建local.repo文件,使用构建的本地repo作为yum源,

代码语言:javascript复制
vim local.repo
[base]
name=base
baseurl=file:///mnt/media
enabled=1
gpgcheck=0
  • gpgcheck可设置为1或0,1表示进行gpg(GNU Private Guard)校验,0表示不进行gpg校验,gpgcheck可以确定rpm包的来源是有效和安全的。
  • gpgkey为签名公钥的存放路径。

yum grouplist 验证

0 人点赞