Zu welchem ​​Fedora-Paket gehört eine bestimmte Datei?

69

Gibt in der Debian-Familie der Betriebssysteme Folgendes an dpkg --search /bin/ls:

coreutils: /bin/ls

Das heißt, die Datei /bin/lsgehört zum Debian-Paket coreutils . (Siehe diesen Beitrag, wenn Sie an einem Paket interessiert sind, das eine nicht installierte Datei enthält.)

Was ist das Fedora-Äquivalent?

Tshepang
quelle

Antworten:

85

Mit können Sie rpm -qf /bin/lsherausfinden, zu welchem ​​Paket Ihre installierte Version gehört:

[09:46:58] ~ $ rpm -qf /bin/ls
coreutils-8.5-7.fc14.i686
[09:47:01] ~ $ 

Update: Laut Ihrem Kommentar sollte Folgendes funktionieren, wenn Sie nur den Namen des Pakets möchten (ich habe gerade die Möglichkeit, es zu testen):

[01:52:49] ~ $ rpm -qf /bin/ls --queryformat '%{NAME}\n'
coreutils
[01:52:52] ~ $ 

Sie können auch verwenden dnf provides /bin/ls, um eine Liste aller verfügbaren Repository-Pakete abzurufen, die die Datei enthalten:

# dnf provides /bin/ls
Last metadata expiration check: 0:17:06 ago on Tue Jun 27 18:04:08 2017.
coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : @System

coreutils-8.25-17.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : updates

coreutils-8.25-14.fc25.x86_64 : A set of basic GNU tools commonly used in shell scripts
Repo        : fedora
eldarerathis
quelle
Gibt es eine Möglichkeit, RPM-Besitzer einer Datei anzuzeigen, ohne einen vollständigen Pfad anzugeben? Möchten Sie eine Notiz zu diesem Effekt hinzufügen?
Tshepang
@ Tshepang: Ich denke, Sie sollten hinzufügen können, um dies --queryformat '%{NAME}'zu erreichen, aber ich habe es selbst nicht getestet. Ich kann jedoch einen kurzen Test durchführen und diesen nach der Arbeit aktualisieren. In der Zwischenzeit könnten Sie die Informationen hier nützlich finden: rpm.org/max-rpm/s1-rpm-query-parts.html
eldarerathis
Ich wollte nur hinzufügen, dass OpenSuSE zyppereine what-providesFunktion hat, die diese Aufgabe erfüllt. Diese Frage wird bei einer Suche zuerst gestellt. Daher ist es hilfreich, diese Antwort zu haben, auch wenn die Frage spezifisch ist.
Casualunixer
2
Für Fedora 22 "dnv bietet Dateinamen" funktioniert auch
Trismegistos