Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
9.5. Yum と Yum リポジトリーの設定
専門知識を深めるために、Red Hat System Administration III (RH254) トレーニングコースと RHCSA Rapid Track (RH199) トレーニングコースを受講することをお勧めします。
yum および関連ユーティリティーの設定情報は /etc/yum.conf
に存在します。このファイルには、必須の [main]
セクションが 1 つあり、ここで全体に影響を与える yum オプションを設定できます。また、[repository]
セクションを 1 つ以上追加して、リポジトリー固有のオプションを設定することもできます。ただし、/etc/yum.repos.d/
ディレクトリーにある、新規または既存の .repo
ファイルに個々のリポジトリーを定義することが推奨されます。/etc/yum.conf
ファイルの各 [repository]
セクションで定義した値は、[main]
セクションに設定した値をオーバーライドします。
このセクションでは以下の方法を紹介します。
-
/etc/yum.conf
設定ファイルの[main]
セクションを編集して、yum のグローバルオプションを設定する方法 -
/etc/yum.conf
ファイル、および/etc/yum.repos.d/
ディレクトリーの.repo
ファイルの[repository]
セクションを編集して、個々のレポジトリーにオプションを設定する方法 -
動的バージョンとアーキテクチャーの値が適切に処理されるように
/etc/yum.conf
の yum 変数と/etc/yum.repos.d/
ディレクトリー内のファイルを使用する方法 - コマンドラインで yum リポジトリーを追加、有効、無効にする方法
- カスタムの yum リポジトリーを設定する方法
9.5.1. [main] オプションの設定
/etc/yum.conf
設定ファイルには、[main]
セクションが 1 つだけ含まれます。本セクションにあるキー値ペアの中には、yum の動作に影響を与えるものもあれば、yum がリポジトリーを処理する方法に影響を与えるものもあります。
/etc/yum.conf
の [main]
セクションの下に、オプションを多数追加できます。
以下は、/etc/yum.conf
設定ファイルのサンプルです。
[main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=0 debuglevel=2 logfile=/var/log/yum.log exactarch=1 obsoletes=1 gpgcheck=1 plugins=1 installonly_limit=3 [comments abridged] # PUT YOUR REPOS HERE OR IN separate files named file.repo # in /etc/yum.repos.d
以下は、[main]
セクションで最もよく使用されるオプションです。
assumeyes
=valueassumeyes
オプションは、yum が重要なアクションに関する確認を行うかどうかを決定します。value を、以下のいずれかで置き換えます。0
: (デフォルト)。yum は、実行する重要な動作の確認を行います。1
:yum
は、実行する重要な動作の確認を行いません。assumeyes=1
を設定すると、yum はコマンドラインオプション-y
および--assumeyes
と同じように動作します。cachedir
=directoryこのオプションを使用して、yum がキャッシュおよびデータベースファイルを保存するディレクトリーを設定します。directory をディレクトリーへの絶対パスで置き換えます。デフォルトでは、yum のキャッシュディレクトリーは
/var/cache/yum/$basearch/$releasever/
です。yum 変数
$basearch
および$releasever
の詳細は、「yum 変数の使用」 を参照してください。debuglevel
=value-
このオプションは、yum が生成するデバッグ出力の詳細を指定します。ここでは、value は
1
から10
までの整数になります。debuglevel
値を高く設定すると、yum がより詳細なデバッグ出力を表示します。debuglevel=2
はデフォルトで、debuglevel=0
がデバッグ出力を無効にします。 exactarch
=valueこのオプションを使用すると、インストール済みのパッケージを更新する際に、yum が正確なアーキテクチャーを考慮するように設定できます。value を以下のいずれかで置き換えます。
0
: パッケージの更新時には正しいアーキテクチャーを考慮に入れて実行しません。1
(デフォルト値): パッケージの更新時に正しいアーキテクチャーを考慮します。このように設定すると、yum が、64 ビットアーキテクチャーのシステムにインストールされているパッケージの更新に、32 ビットアーキテクチャーのパッケージを使用しません。exclude
=package_name more_package_names-
exclude
オプションでは、インストールまたはシステム更新の際にキーワードでパッケージを除外できます。除外する複数のパッケージの一覧を表示するには、スペースで区切ったパッケージの一覧を引用符で囲みます。ワイルドカードを使用したシェル glob 表現 (*
や?
など) を使用できます。 gpgcheck
=valuegpgcheck
オプションを指定して、GPG 著名チェックをパッケージで行う必要があるかどうかを指定します。value を以下のいずれかで置き換えます。0
: インストールされるローカルパッケージなど、全リポジトリー内のパッケージでの GPG 署名確認を無効にします。1
(デフォルト): インストールされるローカルパッケージなど、全リポジトリーのすべてのパッケージで GPG 署名確認を有効にします。gpgcheck
を有効にすると、すべてのパッケージ署名が確認されます。このオプションが
/etc/yum.conf
ファイルの[main]
セクションで設定されている場合は、全リポジトリーに対して GPG 確認ルールが設定されます。ただし、個々のリポジトリーにgpgcheck=value
を設定することもできます。つまり、あるリポジトリーで GPG チェックを有効にしつつ、別のレポジトリーで無効にすることができます。対応の.repo
ファイルの個別のレポジトリーにgpgcheck=value
を設定すると、/etc/yum.conf
にデフォルト値がある場合はそれを無効にします。group_command
=valuegroup_command
オプションを指定して、yum group install
、yum group upgrade
、yum group remove
がパッケージグループを処理する方法を指定します。value を、以下のいずれかで置き換えます。simple
: パッケージグループのすべてのメンバーをインストールします。以前にインストールされたパッケージのみを更新し、その間にグループに追加されたパッケージはインストールしません。compat
:simple
に似ていますが、yum upgrade
は前回の更新以降にグループに追加されたパッケージもインストールします。オブジェクト
: (デフォルト)。 このオプションでは、yum は以前にインストールされたグループを追跡し、グループの一部としてインストールされたパッケージと、個別にインストールされたパッケージを区別します。例9.15「LibreOffice パッケージグループの情報表示」 を参照してください。group_package_types
=package_type more_package_types-
yum
group
install
コマンドが呼び出されたときにインストールされるパッケージのタイプ (オプション、デフォルト、必須) を指定することができます。default および mandatory のパッケージタイプがデフォルトで選択されます。 history_record
=valueこのオプションを使用すると、yum はトランザクション履歴を記録します。value を、以下のいずれかで置き換えます。
0
: yum はトランザクションの履歴エントリーを記録しません。1
(デフォルト値): yum はトランザクションの履歴エントリーを記録します。この操作により、ある程度のディスク領域が使用され、トランザクションの時間が少し長くなりますが、過去の操作に関する多くの情報が提供されます。これは、yum
history
で表示できます。history_record=1
がデフォルトです。yum
history
コマンドの詳細は、「トランザクション履歴の活用」 を参照してください。注記yum は履歴記録を使用して、yum 以外で行われた
rpmdb
データベースへの変更を検出します。変更が検出されると、yum は警告を表示し、rpmdb
の変更によって起こり得る問題を自動的に検索します。history_record
がオフになっていると、yum はこのような変更を検出できず、自動チェックは実行されません。installonlypkgs
=space separated list of packagesここでは、yum でインストールを行い、更新を行わないパッケージの一覧をスペースで区切って提供できます。デフォルトでインストールのみに設定されているパッケージの一覧は、
yum.conf
(5) man ページを参照してください。installonlypkgs
ディレクティブを/etc/yum.conf
に追加する場合は、yum.conf
(5) のinstallonlypkgs
セクションに一覧表示されているものを含め、インストールのみのパッケージをすべてリストするようにしてください。特に (デフォルトで) カーネルパッケージが常にinstallonlypkgs
で一覧表示され、installonly_limit
の値が常に2
よりも大きく設定され、デフォルトが起動に失敗した場合にバックアップカーネルを常に利用可能にするようにしてください。
installonly_limit
=valueこのオプションは、
installonlypkgs
ディレクティブにリストされている多くのパッケージを同時にインストールできる数を設定します。installonlypkgs
に一覧表示されている単一のパッケージに同時にインストールできるようにバージョンの最大数を示す整数に値を置き換えます。installonlypkgs
ディレクティブのデフォルトには複数のカーネルパッケージが含まれています。そのため、installonly_limit
の値を変更すると、インストール済みの単一のカーネルパッケージのバージョンの最大数にも影響することに注意してください。/etc/yum.conf
に一覧表示されるデフォルト値はinstallonly_limit=3
で、使用できる最小値はinstallonly_limit=2
です。installonly_limit=1
に設定すると yum によって実行中のカーネルが削除されるため、設定することはできません。installonly_limit=1
を使用すると、yum は失敗します。installonly_limit=2
を使用すると、1 つのバックアップカーネルが利用可能になります。ただし、2 つのバックアップカーネルを利用できるようにするためにも、デフォルト設定installonly_limit=3
を使用し続けることが推奨されます。keepcache
=valuekeepcache
オプションはインストールに成功した後に、yum がヘッダーのキャッシュを維持するかどうかを決めます。値は、以下のいずれかになります。0
: (デフォルト)。インストールの成功後は、ヘッダーとパッケージのキャッシュを保持しません。1
: インストールの成功後も、キャッシュを保持します。logfile
=file_name-
ログ出力の場所を指定するため、file_name を、yum がログ出力を書き込むファイルへの絶対パスで置き換えます。デフォルトでは、yum は
/var/log/yum.log
にログを記録します。 max_connenctions
=number- ここでの value は、同時接続の最大数を表します。デフォルトは 5 です。
multilib_policy
=valuemultilib_policy
は、複数のアーキテクチャーバージョンがパッケージのインストールに利用できる場合に、インストール動作を設定します。ここで、value は以下を表します。best
: このシステムに最適なアーキテクチャーをインストールします。たとえば、AMD64 システムにmultilib_policy=best
を設定すると、yum は全パッケージの 64 ビットバージョンをインストールします。all
: 常に全パッケージ用の可能なあらゆるアーキテクチャーをインストールします。たとえば、AMD64 システムでmultilib_policy
をall
に設定すると、yum は i686 および AMD64 のパッケージが利用可能であれば両方のバージョンをインストールします。obsoletes
=valueobsoletes
オプションでは、更新中に廃止プロセス論理を有効化します。あるパッケージのスペックファイルで、別のパッケージを廃止することを宣言すると、廃止宣言したパッケージのインストール時に、廃止宣言されたパッケージが、廃止宣言したパッケージに置き換えられます。たとえば、パッケージ名が変更された場合などに廃止が宣言されます。value を、以下のいずれかで置き換えます。0
: 更新の実行時に yum の廃止処理ロジックを無効にします。1
: (デフォルト)。更新の実行時に yum の廃止処理ロジックを有効にします。plugins
=valueこれは、yum プラグインを有効または無効にするグローバルスイッチです。value は以下のいずれかになります。
0
: yum のプラグインをグローバルで無効にします。重要一部のプラグインは重要な yum サービスを提供するため、すべてのプラグインを無効にすることは推奨されません。特に、product-id および subscription-manager プラグインは、証明書ベースの
Content Delivery Network
(CDN) のサポートを提供します。プラグインをグローバルで無効にするオプションは便利なオプションとして提供されていますが、通常は yum に潜在的な問題があると判断された場合にのみ使用することが推奨されます。1
(デフォルト値): すべての yum プラグインを全体的に有効にします。plugins=1
では、そのプラグインの設定ファイルにenabled=0
を設定して、特定の yum プラグインを無効にすることができます。yum の各種プラグインの詳細は 「yum のプラグイン」 を参照してください。プラグインの制御に関する詳細は 「yum プラグインを有効、設定、および無効にする方法」 を参照してください。
reposdir
=directory-
ここでの directory は
.repo
ファイルがあるディレクトリーへの絶対パスです。すべての.repo
ファイルには、リポジトリー情報 (/etc/yum.conf
の[repository]
セクションと類似) が含まれています。yum は.repo
ファイルおよび/etc/yum.conf
ファイルの[repository]
セクションからすべてのリポジトリー情報を収集し、トランザクションに使用するリポジトリーのマスター一覧を作成します。reposdir
が設定されていない場合は、yum はデフォルトのディレクトリーである/etc/yum.repos.d/
を使用します。 retries
=value-
このオプションは、エラーを返す前に yum がファイルの取得を試行する回数を設定します。値 は整数
0
以上です。値を0
に設定すると、yum はその試行を何度も続けます。デフォルト値は10
です。
利用可能な [main]
オプションの詳細なリストは、man ページの yum.conf(5) の [main] OPTIONS
セクションを参照してください。