3.5. システムリポジトリーのオーバーライド
/etc/osbuild-composer/repositories
ディレクトリーで、RHEL Image Builder 用のリポジトリーオーバーライドを独自に設定できます。
RHEL 8.5 リリース以前では、リポジトリーオーバーライドの名前は rhel-8.json
です。RHEL 8.5 以降、名前はマイナーバージョン (rhel-84.json
、rhel-85.json
など) も尊重します。
前提条件
- ホストシステムからアクセスできるカスタムリポジトリーがある。
手順
リポジトリーのオーバーライドを保存する
/etc/osbuild-composer/repositories/
ディレクトリーを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo mkdir -p /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 ファイルに追加します。次の属性から 1 つだけ文字列形式で指定します。
-
baseurl
- リポジトリーのベース URL。 -
metalink
- 有効なミラーリポジトリーのリストを含む metalink ファイルの URL。 mirrorlist
- 有効なミラーリポジトリーのリストを含む mirrorlist ファイルの URL。gpgkey
やmetadata_expire
などの残りのフィールドはオプションです。以下に例を示します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow { "x86_64": [ { "name": "baseos", "baseurl": "http://mirror.example.com/composes/released/RHEL-8/8.0/BaseOS/x86_64/os/", "gpgkey": "-----BEGIN PGP PUBLIC KEY BLOCK-----\n\n (…)", "check_gpg": true } ] }
{ "x86_64": [ { "name": "baseos", "baseurl": "http://mirror.example.com/composes/released/RHEL-8/8.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)。Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp /usr/share/osbuild-composer/repositories/rhel-version.json /etc/osbuild-composer/repositories/
$ cp /usr/share/osbuild-composer/repositories/rhel-version.json /etc/osbuild-composer/repositories/
-
オプション: JSON ファイルを確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow json_verify < /etc/osbuild-composer/repositories/rhel-version.json
$ json_verify < /etc/osbuild-composer/repositories/rhel-version.json
rhel-10.0.json
ファイル内のbaseurl
パスを編集して保存します。以下に例を示します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/osbuild-composer/repositories/rhel-version.json
$ /etc/osbuild-composer/repositories/rhel-version.json
osbuild-composer.service
を再起動します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo systemctl restart osbuild-composer.service
$ sudo systemctl restart osbuild-composer.service
検証
リポジトリーが正しい URL を指しているか確認します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cat /etc/yum.repos.d/redhat.repo
$ cat /etc/yum.repos.d/redhat.repo
リポジトリーは
/etc/yum.repos.d/redhat.repo
ファイルからコピーされた正しい URL を指していることが分かります。
関連情報
-
リポジトリーで利用可能な最新の RPM バージョンは、
osbuild-composer
では表示されません。(Red Hat ナレッジベース)