乐于分享
好东西不私藏

yum 本地软件仓库–reposync

yum 本地软件仓库–reposync

reposync 

reposync 命令用于将远程的yum存储库同步到本地目录,并使用yum来检索软件包,可以指定外网源(repo id)的软件包同步到本地文件中。

安装 reposync

dnf install dnf-plugins-core

reposync 选项参数

选项

含义

-c [file]

指定配置文件运行(默认配置文件是 /etc/yum.conf )

-q

静谧运行

-v

显示详细操作

-h

获取帮助

-b

尝试使用最佳的软件包版本

-C

只从系统缓存中运行,不更新缓存

-R [min]

最大命令等待时间

-y

所有回答都是 yes

-x [package]

排除哪些包

-n repoid=[]

只下载最新的包,相同的跳过

-p

指定下载路径

–delete

删除已不在仓库中的本地软件包

创建本地存储目录

mkdir -p /repo/kylin/aarch_64/

同步 repo 文件中软件包到本地,aarch_64目录下自动创建以 repoid 命名的目录

reposync -n --repoid=ks10-adv-os --repoid=ks10-adv-updates -p /repo/kylin/aarch_64/

kylin_aarch64.repo 文件

###Kylin Linux Advanced Server 10 - os repo###[ks10-adv-os]name = Kylin Linux Advanced Server 10 - Os baseurl = https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/base/$basearch/gpgcheck = 1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylinenabled = 1[ks10-adv-updates]name = Kylin Linux Advanced Server 10 - Updatesbaseurl = https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/updates/$basearch/gpgcheck = 1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylinenabled = 1[ks10-adv-addons]name = Kylin Linux Advanced Server 10 - Addonsbaseurl = https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/addons/$basearch/gpgcheck = 1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-kylinenabled = 0

-c 指定 repo 文件,–delete 删除已不在仓库中的本地软件包

reposync -n -c /opt/kylin_aarch64.repo --delete --repoid=ks10-adv-os  -p /repo/kylin/aarch_64

创建本地索引文件

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

安装createrepo

dnf install createrepo

/repo/kylin/arrch_64 目录下执行 createrepo . 命令

cd /repo/kylin/aarch_64/ks10-adv-oscreaterepo .

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

下载组依赖xml文件

wget -P /repo/kylin/aarch_64/ks10-adv-os/repodata/ https://update.cs2c.com.cn/NS/V10/V10SP3/os/adv/lic/base/aarch64/repodata/d1b96fc05a4271e5eabef4039c47be58497f202d1b0bd6b5f2ac9100d34bf0b9-comps-v10-sp3-aarch64.xml

创建本地索引文件

createrepo -g /repo/kylin/aarch_64/ks10-adv-os/repodata/d1b96fc05a4271e5eabef4039c47be58497f202d1b0bd6b5f2ac9100d34bf0b9-comps-v10-sp3-aarch64.xml  --update --workers=10 /repo/aarch_64/ks10-adv-os/
  • –update表示更新,–workers表示线程数

注意:组依赖xml文件从官网wget下载,如不指定组依赖文件则无法使用使用groupinstall,通过”dnf  grouplist”命令进行组列表验证。

rsync 目录数据同步

rsync -av --delete /repo/kylin/aarch_64/ks10-adv-os/ /repo/kylin/NS/V10/V10SP3/os/adv/lic/base/aarch64/

nginx 目录发布

cat   /etc/nginx/conf.d/mirrors.conf

server { listen 8080; server_name 127.0.0.1; root /var/www/html; location / {   autoindex on;  }}

软链接

sudo ln -s  /repo/kylin/   /var/www/html/kylin
ln-s 源文件 目标文件 ,源文件是要链接的文件,目标文件是链接后的文件名或路径。使用-s选项表示创建符号链接,如果不加-s选项,则默认创建硬链接。

yum repo 文件

备份repo文件

cp kylin_aarch64.repo  kylin_aarch64.repo.bak

vim kylin_aarch64.repo

[ks10-adv-os]name = Kylin Linux Advanced Server 10 - Os baseurl=http://127.0.0.1/kylin/NS/V10/V10SP3/os/adv/lic/base/$basearch/enabled=1gpgcheck=0[ks10-adv-updates]name = Kylin Linux Advanced Server 10 - Updatesbaseurl = http://127.0.0.1/kylin/NS/V10/V10SP3/os/adv/lic/updates/$basearch/gpgcheck = 0enabled = 1

gpgcheck可设置为1或0,1表示进行gpg(GNU Private Guard)校验,0表示不进行gpg校验,gpgcheck用于验证rpm包的来源是有效和安全,gpgkey为签名公钥的存放路径。

本站文章均为手工撰写未经允许谢绝转载:夜雨聆风 » yum 本地软件仓库–reposync

评论 抢沙发

9 + 4 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
×
订阅图标按钮