9.6. yum のプラグイン
yum は、その操作を拡張し、強化するプラグインを提供します。特定のプラグインが、デフォルトでインストールされています。yum コマンドを呼び出すたびに、読み込まれ、アクティブになっているプラグインがあれば、yum
がそれを通知します。以下に例を示します。
~]# yum info yum Loaded plugins: langpacks, product-id, subscription-manager [output truncated]
Loaded plugins
に続くプラグイン名は --disableplugin=plugin_name
オプションに指定できる名前です。
9.6.1. yum プラグインを有効、設定、および無効にする方法
yum プラグインを有効にする場合は、/etc/yum.conf
の [main]
セクションに plugins=
で始まる行を追加し、その値を 1
にします。
plugins=1
すべてのプラグインを無効にするには、この行を plugins=0
に変更します。
一部のプラグインは重要な yum サービスを提供するため、すべてのプラグインを無効にすることは推奨されません。その中でも product-id プラグインおよび subscription-manager プラグインは、証明書ベースの Content Delivery Network
(CDN) への対応に必要です。プラグインをグローバルで無効にするオプションは便利なオプションとして提供されていますが、通常は yum に潜在的な問題があると判断された場合にのみ使用することが推奨されます。
すべてのインストール済みプラグインには、/etc/yum/pluginconf.d/
ディレクトリーにそれぞれの設定ファイルがあります。このファイルに、プラグイン固有のオプションを設定できます。たとえば、以下のように aliases プラグインの aliases.conf
設定ファイルがあるとします。
[main] enabled=1
/etc/yum.conf
ファイルと同様、プラグイン設定ファイルには常に [main]
セクションが含まれます。このセクションでは、enabled=
オプションで、yum
コマンドを実行する際にプラグインを有効にするかどうかを制御します。このオプションがファイルに含まれていない場合は手動で追加できます。
/etc/yum.conf
に enabled=0
を設定してすべてのプラグインを無効にすると、個々の設定ファイルで有効かどうかに関わらず、すべてのプラグインが無効になります。
1 つの yum
コマンドで yum プラグインをすべて無効にする場合は、--noplugins
オプションを使用します。
1 つの yum
コマンドで、1 つ以上の yum プラグインを無効にする場合は、そのコマンドに --disableplugin=plugin_name
オプションを追加します。たとえば、システムの更新中に aliases プラグインを無効にするには、以下を入力します。
~]# yum update --disableplugin=aliases
--disableplugin=
オプションに指定したプラグイン名は、yum
コマンドの出力の Loaded プラグイン
行の後にリスト表示される名前と同じです。名前をコンマで区切ることにより、複数のプラグインを無効にすることができます。さらに、glob 表現を使用して、複数のプラグイン名に一致したり、長いプラグイン名を短くすることができます。
~]# yum update --disableplugin=aliases,lang*
9.6.2. 追加の Yum プラグインのインストール
yum プラグインは通常、 yum-plugin-plugin_name
規則に従いますが、常に kabi プラグインを提供するパッケージは kabi-yum-plugins
という名前です。yum プラグインは、他のパッケージをインストールするのと同じ方法でインストールできます。たとえば、yum-aliases プラグインをインストールするには、シェルプロンプトで次のコマンドを実行します。
~]# yum install yum-plugin-aliases
9.6.3. yum プラグインの使用方法
以下では、便利な yum プラグインの説明と使用方法を紹介しています。プラグインは名前で表示されており、括弧内はパッケージ名になります。
- search-disabled-repos (subscription-manager)
search-disabled-repos プラグインを使用すると、依存関係を解決するために無効なリポジトリーを一時的または永久的に有効にできます。このプラグインが有効な場合は、依存関係の解決に失敗して Yum がパッケージのインストールに失敗したときに、無効なリポジトリーを一時的に有効し、再試行することが提示されます。インストールが成功した場合、Yum は使用されているリポジトリーを永久的に有効にすることも提示します。プラグインは subscription-manager により管理されているリポジトリーとのみ連携し、カスタムリポジトリーとは連携しません。
重要yum
が--assumeyes
または-y
オプションで実行されるか、/etc/yum.conf
でassumeyes
ディレクティブが有効になっている場合、プラグインは、確認を求めるプロンプトなしに、一時的に、そして永続的に無効なリポジトリーを有効にします。この結果、有効にしたくないリポジトリーが有効になるといった問題が発生することがあります。search-disabled-repos プラグインを設定するには、
/etc/yum/pluginconf.d/search-disabled-repos.conf
にある設定ファイルを編集します。[main]
セクションで使用できるディレクティブのリストについては、以下の表を参照してください。表9.3 サポートされている search-disabled-repos.conf ディレクティブ ディレクティブ 詳細 enabled
=valueプラグインを有効または無効にできます。value は
1
(有効) または0
(無効) にする必要があります。プラグインはデフォルトで有効です。notify_only
=valueプラグインの動作を通知のみに制限できます。value は
1
(Yum の動作の変更なしで通知のみ) または0
(Yum の動作の変更) のいずれかにする必要があります。デフォルトでは、プラグインはユーザーへの通知のみを行います。ignored_repos
=repositoriesプラグインで有効でないリポジトリーを指定できます。
- kabi (kabi-yum-plugins)
kabi プラグインは、ドライバー更新パッケージが公式の Red Hat kernel Application Binary Interface (kABI) と適合するかどうかを確認します。このプラグインが有効な状態で、ユーザーがホワイトリストにないカーネルシンボルを使用するパッケージのインストールを試行する場合は、警告メッセージがシステムログに書き込まれます。さらには、プラグインを enforcing モードで実行するように設定すると、そうしたパッケージがインストールされないようにできます。
kabi プラグインを設定するには、
/etc/yum/pluginconf.d/kabi.conf
にある設定ファイルを編集します。[main]
セクションに使用できるディレクティブのリストを以下の表に示します。表9.4 サポートされている kabi.conf ディレクティブ ディレクティブ 詳細 enabled
=valueプラグインを有効または無効にできます。value は
1
(有効) または0
(無効) にする必要があります。インストール時には、プラグインはデフォルトで有効です。whitelists
=directoryサポートされているカーネルシンボルを持つファイルがある directory を指定できます。デフォルトでは、kabi プラグインは kernel-abi-whitelists パッケージ (
/usr/lib/modules/kabi-rhel70/
ディレクトリー) が提供するファイルを使用します。enforce
=valueenforcing モードを有効または無効にできます。value は
1
(有効) または0
(無効) にする必要があります。デフォルトでは、このオプションはコメントアウトされ kabi プラグインは警告メッセージのみを表示します。- product-id (subscription-manager)
- product-id プラグインは、Content Delivery Network (コンテンツ配信ネットワーク) からインストールされた製品の製品識別証明書を管理します。product-id プラグインはデフォルトでインストールされています。
- langpacks (yum-langpacks)
- langpacks プラグインは、インストールされているすべてのパッケージ用に選択された言語のロケールパッケージを検索するために使用します。langpacks プラグインはデフォルトでインストールされます。
- エイリアス (yum-plugin-aliases )
-
aliases プラグインは、
yum
のエイリアスの設定と使用を可能にするalias
コマンドラインオプションを追加します。 - yum-changelog (yum-plugin-changelog)
-
yum-changelog プラグインは、更新前後にパッケージ変更ログの表示を有効にする
--changelog
コマンドラインオプションを追加します。 - yum-tmprepo (yum-plugin-tmprepo)
-
yum-tmprepo プラグインは、リポジトリーファイルの URL を取り扱う
--tmprepo
コマンドラインオプションを追加し、1 つのトランザクションに対してのみダウンロードおよび有効化します。このプラグインはリポジトリーの安全な一時的使用を確保します。デフォルトでは、gpg 確認を無効にしません。 - yum-verify ( yum-plugin-verify )
-
yum-verify プラグインは、システム上の検証データを表示するための
verify
、verify-rpm
、verify-all
コマンドラインオプションを追加します。 - yum-versionlock ( yum-plugin-versionlock )
-
yum-versionlock プラグインは選択されたパッケージの他のバージョンを除外し、パッケージが最新バージョンに更新されることを防ぎます。
versionlock
コマンドラインオプションを使用すると、ロックされたパッケージを表示して、編集できます。