repoquery
RPM依存関係を使用してダウンロードしようとしましたが、yumdownloader
結果が一貫していませんでした。repoquery
リポジトリで利用可能な最新の互換性パッケージが常に返されるようにするにはどうすればよいですか?
呼び出し方法によっては、一貫性のない結果が表示されますrepoquery
。
$ repoquery --whatprovides systemd-python
systemd-python-0:208-20.el7_1.6.x86_64
systemd-python-0:208-20.el7.x86_64
systemd-python-0:208-20.el7_1.3.x86_64
systemd-python-0:208-20.el7_1.2.x86_64
systemd-python-0:208-20.el7_1.5.x86_64
$ repoquery --resolve systemd-python
systemd-python-0:208-20.el7_1.6.x86_64
$ repoquery --requires salt
...
systemd-python
...
$ repoquery --requires --resolve salt
...
systemd-python-0:208-20.el7_1.5.x86_64
...
20.el7_1.6
自己照会はリリースとして検証されますが、依存関係であると確認された場合20.el7_1.5
はリリースとして検証されます。
systemd-python
リリースするシステムを更新した20.el7_1.6
後、repoquery
最も古いバージョンの依存関係を解決し始めたとき、状況はさらに混乱しました。
$ repoquery --requires --resolve salt
...
systemd-python-0:208-20.el7.x86_64
...
このように一貫性のない結果が出るのはなぜですか?repoquery
ローカルシステムにインストールされているエントリに関係なく、リポジトリの最新のパッケージバージョンを強制的に解決する方法は?
答え1
あなたの質問に対する古いyum repoqueryの場合、おそらくそれを行うことはできません。
新しいプラグイン(DNFプラグイン)の場合は、次のことができます。dnf repoquery --latest-limit 1