複数のサードパーティRPMリポジトリを使用しています。これらのリポジトリには競合する名前のパッケージが含まれているため、混乱を整理するために yum-plugin-priorities を試しています。
実行するとyum check-update
、リポジトリの優先度保護のために 'N個のパッケージが除外されているという通知が表示されます `:
[root@Host ~]# yum check-update
Loaded plugins: changelog, downloadonly, fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
3941 packages excluded due to repository priority protections
[root@Host ~]#
3941除外されたパッケージ?おやおや、それは私が期待していたよりもはるかに多いです。 yumが何をしているかを再確認できるように、どのパッケージが考慮から除外されているかをすばやく確認する方法はありますか?
私は試した --disableplugin=priorities
ですが、除外されたパッケージは表示されません。
[root@Host ~]# yum check-update --disableplugin=priorities
Loaded plugins: changelog, downloadonly, fastestmirror, security
Loading mirror speeds from cached hostfile
[root@Host ~]#
それよりも簡単です:)
除外は、yumdebuglevelを使用して表示できます。それらはデバッグレベル3から見ることができます(デバッグレベルの範囲は0〜10です)
yum update -d3
あなたにリストを与えます。
除外するものをリストするための迅速な方法または組み込みの方法があるかどうかはわかりませんが、少しのコードに飛び込んでもかまわない場合は、必要なものを見つけることができます。
プラグインは次の場所にあります。
/usr/lib/yum-plugins/priorities.py
関数:
config_hook(conduit)
パッケージ除外スロットに到達すると、yumによって実行されます。
コードは比較的単純で、適切な場所にprintステートメントを挿入するだけでより多くの情報を得ることができます。より具体的には、あなたが見るときはいつでも
conduit.delPackage(po)
パッケージが除外されていることを意味します。挿入するだけです
print po
上記の行で、パッケージの文字列出力を取得します。