Ich möchte ein HP CLI-Dienstprogramm installieren, also überprüfe ich zuerst die Abhängigkeiten und stelle fest, dass etwas namens rpmlib benötigt wird:
[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
Ich überprüfe, ob ich es bereits installiert habe, kann es aber nicht finden:
[root@centos2 ~]# rpm -qa | grep -i rpmlib
[root@centos2 ~]# yum list installed | grep -i rpmlib
[root@centos2 ~]#
Ich versuche die Installation trotzdem mit Yum und das Paket wird ohne Probleme und fehlende Abhängigkeiten installiert.
[root@centos2 ~]# yum list installed | grep -i hp
hp-health.x86_64 10.30-1752.15.rhel7 installed
Warum?
Ich möchte wissen, ob es möglich ist, dass ein Paket auf einem System installiert ist, aber bei Verwendung von RPM- oder Yum-Befehlen nicht gefunden wird?
Antwort1
rpmlib()
Abhängigkeiten geben von RPM selbst bereitgestellte Funktionen an, nicht tatsächliche Pakete. Die Version der Anforderung stellt die Version von RPM dar, die zuerst die genannte Funktion hatte.
Antwort2
Sie können ganz einfach anzeigen, welches Paket diese Abhängigkeit bereitstellt, indem Sie Folgendes verwenden:
# rpm -q --whatprovides 'rtld(GNU_HASH)'
glibc-2.26-16.fc27.x86_64
glibc-2.26-16.fc27.i686
oder:
$ 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)
Mehr zu den Funktionen (auch bekannt als „Virtual Provides“) finden Sie hier:https://docs-old.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-advanced-packaging.html#id818305