搜索

3.5. 覆盖系统存储库

download PDF

您可以在 /etc/osbuild-composer/repositories 目录中为 RHEL 镜像构建器配置自己的存储库覆盖。

先决条件

  • 您有一个可从主机系统访问的自定义存储库。

步骤

  1. 创建 /etc/osbuild-composer/repositories/ 目录来存储存储库覆盖:

    $ sudo mkdir -p /etc/osbuild-composer/repositories
  2. 使用与 RHEL 版本相对应的名称,创建一个 JSON 文件。或者,您还可以从 /usr/share/osbuild-composer/ 中复制用于分发的文件,并修改其内容。

    对于 RHEL 9.3,请使用 /etc/osbuild-composer/repositories/rhel-93.json

  3. 将以下结构添加到 JSON 文件中。仅以字符串格式指定以下属性之一:

    • baseurl - 存储库的基本 URL。
    • metalink - 包含有效镜像存储库列表的 metalink 文件的 URL。
    • mirrorlist - 包含有效镜像存储库列表的 mirrorlist 文件的 URL。其余的字段(如 gpgkey )和 metadata_expire 是可选的。

      例如:

      {
           "x86_64": [
              {
                  "name": "baseos",
                  "baseurl": "http://mirror.example.com/composes/released/RHEL-9/9.0/BaseOS/x86_64/os/",
                  "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\n (…​)",
                  "check_gpg": true
              }
          ]
      }

      或者,您可以通过将 rhel-version.json 替换为 RHEL 版本(例如:rhel-9.json)来复制您发行版的 JSON 文件。

      $  cp /usr/share/osbuild-composer/repositories/rhel-version.json /etc/osbuild-composer/repositories/
  4. 可选:验证 JSON 文件:

    $ json_verify < /etc/osbuild-composer/repositories/rhel-version.json
  5. rhel-9.json 文件中编辑 baseurl 路径,并保存。例如:

    $ /etc/osbuild-composer/repositories/rhel-version.json
  6. 重启 osbuild-composer.service

    $ sudo systemctl restart osbuild-composer.service

验证

  • 检查存储库是否指向正确的 URL:

    $ cat /etc/yum.repos.d/redhat.repo

    您可以看到仓库指向从 /etc/yum.repos.d/redhat.repo 文件中复制的正确 URL。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.