yum update が失敗し Plugins can't be imported エラーが表示される
Environment
- Red Hat Enterprise Linux 5.7 以降
- Red Hat Subscription Manager (RHSM)
Issue
yum update
が失敗し、以下のエラーが表示されます。
# yum update
Plugin "product-id" can't be imported
Plugin "subscription-manager" can't be imported
Unable to find Subscription Manager module.
Error: cannot import name init_dep_injection
Resolution
- インストールされていない
m2crypto
パッケージをシステムにインストールし、問題が発生しているシステムのyum-rhn-plugin
パッケージをアップグレードします。 yum
およびsubscription-manager
パッケージを再インストールします。- 「診断手順」セクションに記載されている重複パッケージが存在する場合はすべて削除します。
Root Cause
- Red Hat が提供する
m2crypto
パッケージがシステムに存在しないためこのエラーが発生します。 - システムでパッケージが重複しています。
- サブスクリプションマネージャー関連のファイルが修正されています。
Diagnostic Steps
- 問題が発生しているシステムから以下の詳細を収集します。
$ strace -fxvto /tmp/strace.out yum update
- 以下のコマンドの出力結果で修正が必要または見つからないとされているファイルが存在するかどうかを確認します。
# rpm -V yum subscription-manager
- その場合は、
yum
およびsubscription-manager
パッケージを RHN からダウンロードして手動で再インストールします。
# rpm --replacepkgs -vh yum-x.x.x.y.y.noarch.rpm subscription-manager-x.x.yy-x.x.x.rpm
- 以下のコマンドを実行して、その他のすべての重複パッケージに対して rpm データベースをスキャンします。
# package-cleanup --dupes
- 出力結果が正しいと思われる場合は、以下のコマンドを実行して、これらの重複パッケージの古いバージョンを削除します。
# package-cleanup --cleandupes
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Comments