DNF ソフトウェアリポジトリの管理
このステップでは、DNF ソフトウェアリポジトリの管理方法を学びます。リポジトリはソフトウェアパッケージが保存され、dnf がそこからパッケージを取得する場所です。リポジトリのリスト表示、有効化、無効化、追加方法を理解することは、システムで使用可能なソフトウェアを制御するために非常に重要です。
最初に、構成済みのすべての DNF リポジトリとその状態(有効または無効)をリスト表示しましょう。
sudo dnf repolist all
リポジトリ ID、名前、現在の状態のリストが表示されます。
(出力省略)
dnf config-manager コマンドは、リポジトリ設定を管理するための強力なツールです。このコマンドを使用して、リポジトリを有効または無効にすることができます。たとえば、仮のデバッグリポジトリを有効化してみましょう。この特定のリポジトリは、この実験環境では存在しないかアクセスできない可能性がありますが、コマンドの構文を示しています。
sudo dnf config-manager --enable rhel-9-server-debug-rpms
サブスクリプション管理に関するメッセージと、リポジトリが見つからないことを示すエラーが表示されます。これは、この環境で想定されることです。
(出力省略)
次に、リポジトリを無効化してみましょう。rhel-9-for-x86_64-appstream-rpms を例として使用します。注意:この特定のリポジトリ名は、この UBI 環境には存在しません。しかし、コマンドの構文を示しています。
sudo dnf config-manager --disable rhel-9-for-x86_64-appstream-rpms
サブスクリプション管理に関するメッセージと、この環境にリポジトリが存在しないことを示すエラーが表示されます。
(出力省略)
このリポジトリ名が現在のシステムに存在しないことを確認しましょう。
sudo dnf repolist all | grep rhel-9-for-x86_64-appstream-rpms
予想通り、このリポジトリは UBI 環境に存在しないため、出力はありません。
(出力なし)
リポジトリが存在しないことを確認するために、同じ有効化コマンドを試してみましょう。
sudo dnf config-manager --enable rhel-9-for-x86_64-appstream-rpms
再び、同じエラーメッセージが表示されます。
(出力省略)
dnf config-manager --add-repo コマンドは、URL を指定して新しいリポジトリを追加することもできます。デモのために、一般的な EPEL (Extra Packages for Enterprise Linux) リポジトリの URL を追加してみましょう。これは、GPG キーや特定の .repo ファイルが必要な場合があるため、リポジトリを完全に構成するわけではない可能性がありますが、コマンドの機能を示しています。
sudo dnf config-manager --add-repo="https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/"
新しい .repo ファイルが作成されたことを示す出力が表示されます。
(出力省略)
新しく作成された .repo ファイルを /etc/yum.repos.d/ で確認できます。ファイル名は URL から派生します。
ls /etc/yum.repos.d/
既存のリポジトリファイルとともに、dl.fedoraproject.org_pub_epel_9_Everything_x86_64_.repo などのファイルが表示されるはずです。
(出力省略)
最後に、追加したリポジトリ設定ファイルを削除してクリーンアップします。
sudo rm /etc/yum.repos.d/dl.fedoraproject.org_pub_epel_9_Everything_x86_64_.repo
このステップでは、RHEL でソフトウェアソースを管理するために不可欠な、DNF リポジトリのリスト表示、有効化、無効化、追加方法を学びました。