パッケージをインストールできますが、yumまたはrpmコマンドで表示されない可能性がありますか?

パッケージをインストールできますが、yumまたはrpmコマンドで表示されない可能性がありますか?

HP CLIユーティリティをインストールしたかったので、まず依存関係を確認し、rpmlibという必要があることに気づきました。

[root@centos2 ~]# rpm -qRp hp-health-10.30-1752.15.rhel7.x86_64.rpm  | grep 
rpmlib

rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(PayloadIsXz) <= 5.2-1

インストールされていることを確認しましたが、見つかりませんでした。

[root@centos2 ~]# rpm -qa | grep -i rpmlib
[root@centos2 ~]# yum list installed | grep -i rpmlib
[root@centos2 ~]#

とにかくyumを使ってインストールしようとしましたが、パッケージは問題なくインストールされ、依存関係がありませんでした。

[root@centos2 ~]# yum list installed | grep -i hp
hp-health.x86_64                        10.30-1752.15.rhel7            installed

なぜ?

rpmまたはyumコマンドを使用すると、システムにインストールされている特定のパッケージが見つからないことが可能かどうか疑問に思います。

答え1

rpmlib()依存関係は、実際のパッケージではなくrpm自体で提供される機能を指定します。必須バージョンは、指定された機能を備えた最初のrpmバージョンを表します。

答え2

次のコマンドを使用すると、どのパッケージがこの依存関係を提供しているかを簡単に表示できます。

# rpm -q --whatprovides 'rtld(GNU_HASH)'
glibc-2.26-16.fc27.x86_64
glibc-2.26-16.fc27.i686

または:

$ LC_ALL=C sudo dnf whatprovides 'rtld(GNU_HASH)'
Last metadata expiration check: 0:03:39 ago on Sat Nov 25 12:40:10 2017.
glibc-2.26-16.fc27.x86_64 : The GNU libc libraries
Repo        : @System
Matched from:
Provide    : rtld(GNU_HASH)

glibc-2.26-16.fc27.i686 : The GNU libc libraries
Repo        : @System
Matched from:
Provide    : rtld(GNU_HASH)

glibc-2.26-16.fc27.i686 : The GNU libc libraries
Repo        : updates
Matched from:
Provide    : rtld(GNU_HASH)

glibc-2.26-16.fc27.x86_64 : The GNU libc libraries
Repo        : updates
Matched from:
Provide    : rtld(GNU_HASH)

glibc-2.26-15.fc27.i686 : The GNU libc libraries
Repo        : fedora
Matched from:
Provide    : rtld(GNU_HASH)

glibc-2.26-15.fc27.x86_64 : The GNU libc libraries
Repo        : fedora
Matched from:
Provide    : rtld(GNU_HASH)

機能(仮想提案とも呼ばれる)の詳細については、こちらをご覧ください。https://docs-old.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-advanced-packaging.html#id818305

関連情報