3.5. 覆盖系统存储库
您可以在 /etc/osbuild-composer/repositories 目录中为 RHEL 镜像构建器配置自己的存储库覆盖。
先决条件
- 您有一个可从主机系统访问的自定义存储库。
步骤
创建
/etc/osbuild-composer/repositories/目录来存储存储库覆盖:$ sudo mkdir -p /etc/osbuild-composer/repositories使用与 RHEL 版本对应的名称,创建一个 JSON 文件。或者,您还可以从
/usr/share/osbuild-composer/中复制用于分发的文件,并修改其内容。对于 RHEL 10,请使用
/etc/osbuild-composer/repositories/rhel-10.json。将以下结构添加到 JSON 文件中。仅以字符串格式指定以下属性之一:
-
baseurl- 存储库的基本 URL。 -
metalink- 包含有效镜像存储库列表的 metalink 文件的 URL。 mirrorlist- 包含有效镜像存储库列表的 mirrorlist 文件的 URL。其余的字段(如gpgkey)和metadata_expire是可选的。例如:
{ "x86_64": [ { "name": "baseos", "baseurl": "http://mirror.example.com/composes/released/RHEL-10.0/10.0/BaseOS/x86_64/os/", "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\n (…)", "check_gpg": true } ] }或者,您可以通过将
rhel-version.json替换为 RHEL 版本来复制发行版本的 JSON 文件,例如:rhel-10.0.json。$ cp /usr/share/osbuild-composer/repositories/rhel-10.0.json /etc/osbuild-composer/repositories/
-
可选:验证 JSON 文件:
$ json_verify /etc/osbuild-composer/repositories/file.json编辑
rhel-10.0.json文件中的baseurl路径,并保存。例如:$ /etc/osbuild-composer/repositories/rhel-10.0.json重启
osbuild-composer.service:$ sudo systemctl restart osbuild-composer.service
验证
检查存储库是否指向正确的 URL:
$ cat /etc/yum.repos.d/redhat.repo您可以看到仓库指向从
/etc/yum.repos.d/redhat.repo文件复制的正确 URL。