ソースrpmを更新できないのはなぜですか?

ソースrpmを更新できないのはなぜですか?

Redhat Enterprise 7.0 インスタンスに次の 2 つのパッケージをインストールしました。

bind-license-9.9.4-14.el7_0.1.noarch
bind-libs-lite-9.9.4-14.el7_0.1.x86_64

"repoquery -i"コマンドは、これらのパッケージのソースrpmがバンドルされていることを示します。

repoquery -i bind-license-9.9.4-14.el7_0.1.noarch

Name        : bind-license
Version     : 9.9.4
Release     : 14.el7_0.1
Architecture: noarch
Size        : 26019
Packager    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
Group       : Applications/System
URL         : http://www.isc.org/products/BIND/
Repository  : rhel-7-server-rpms
Summary     : License of the BIND DNS suite
Source      : **bind-9.9.4-14.el7_0.1.src.rpm**
Description :
Contains license of the BIND DNS suite.
Similarly if I use the yum downloader to download the source rpms of above 2     packages the bind source rpm (bind-9.9.4-14.el7_0.1.src.rpm) is downloaded.

ただし、バインディングを更新しようとすると、次の結果が表示されます。

yum update bind
Loaded plugins: product-id, subscription-manager
Package(s) bind available, but not installed.
**No packages marked for update**

私の質問は、なぜrepoqueryとyumdownloaderがバインディング-9.9.4-14.el7_0.1.src.rpmをソースrpmとして報告するのかです。バインドが正しいソースrpmの場合、「yumアップデートバインド」でバインドがシステムにインストールされていないと言うのはなぜですか?

答え1

ソースrpmは1つ以上のバイナリrpmを生成できます。独自のバイナリrpmを構築しない限り、ソースrpmを心配する必要はありません。したがって、repoqueryは、bin-9.9.4-14.el7_0.1.src.rpmがライセンスがバインドされたソースrpmであることを示しています。同じソースrpmは、バインド、バインド-libs、バインドライセンス、バインドユーティリティなどを生成します。

答え2

repoquery複数のRPMを格納するリモートサーバーを意味するリポジトリに問い合わせ、それに関するいくつかの情報(このRPMに含まれるファイルなど)を知らせます。repoqueryこのフラグを追加しないと、要求されたパッケージがシステムにインストールされているかどうかは問題ありません--installed

このフラグを追加すると、入力したコマンドは何も出力しないようです。

repoquery --installed -i bind-license-9.9.4-14.el7_0.1.noarch

実際にはBindシステムにインストールされていません。実際にインストールされたパッケージを一覧表示するには、次のいずれかを試すことができます。

repoquery --installed -a

または

yum list installed

関連情報