Informationen zu nicht installierten RPM-Paketen anzeigen?


76

Ich habe danach gegoogelt, konnte aber nicht herausfinden, wie eine nicht installierte RPM-Datei nach ihren Informationen abgefragt werden kann:

# rpm -qa blackfin-jtag-tools-09r1.1-2.i386.rpm
# 
# rpm -qi blackfin-jtag-tools-09r1.1-2.i386.rpm
package blackfin-jtag-tools-09r1.1-2.i386.rpm is not installed
# 
# rpm -q blackfin-jtag-tools-09r1.1-2.i386.rpm
package blackfin-jtag-tools-09r1.1-2.i386.rpm is not installed
# 
# rpm --info  blackfin-jtag-tools-09r1.1-2.i386.rpm
RPM version 4.8.0
Copyright (C) 1998-2002 - Red Hat, Inc.
This program may be freely redistributed under the terms of the GNU GPL

Usage: rpm [-aKfgpWHqVcdilsKiv?] [-a|--all] [-f|--file] [-g|--group] [-p|--package] [-W|--ftswalk] [--pkgid] [--hdrid] [--fileid]
        [--specfile] [--triggeredby] [--whatrequires] [--whatprovides] [--nomanifest] [-c|--configfiles] [-d|--docfiles]
        [--dump] [-l|--list] [--queryformat=QUERYFORMAT] [-s|--state] [--nofiledigest] [--nomd5] [--nofiles] [--nodeps]
[...]

Gibt es einen Befehl zum Lesen von Informationen aus einer nicht installierten RPM-Datei?

Antworten:


124

rpm -qip foo.rpm


4
Ich kann mich auch nie erinnern, also habe ich einen Spickzettel gemacht pixelbeat.org/docs/packaging.html
pixelbeat

13
Sie können auch andere Informationen über das Paket mit folgenden Informationen versehen: Zum Beispiel, rpm -qp --scripts foo.rpmum die RPM-Pre- / Post-Skripte aufzulisten oder rpm -qp --list foo.rpmum den Paketinhalt aufzulisten . Endlich: der Vollständigkeit halber. -q ist eine Abfrage und -p ist für ein nicht installiertes Paket.
Jeff Sheffield

16

@crazyscot hat die Frage beantwortet. Vielen Dank.

Außerdem habe ich festgestellt, dass bestimmte Abfragetags auch auf diese Weise genutzt werden können, was beim Lesen der Manpage nicht offensichtlich war. So habe ich beispielsweise festgestellt, dass ich Folgendes tun kann:

    rpm -qp --queryformat '%{ARCH}\n' foo.rpm

oder auch:

    xyz="ARCH";  rpm -qp --qf %{${xyz}}  foo.rpm; echo ""

Dies funktioniert gut für RPMs, die nicht installiert sind, und nutzt die verfügbaren Abfragetags in der installierten Drehzahl

Hier finden Sie weitere Informationen zu Tags


1
Es ist auch möglich, die verfügbaren Tags mitrpm --querytags
Wilf

9

Wenn rpm dann nicht installiert ist (hier werden die vollständigen Informationen sowie das Inhaltsverzeichnis im Paket aufgelistet).

rpm -qipl <rpm_name.rpm> 

Wenn dann U / min installiert ist;

rpm -qi <rpm_name.rpm>

Weitere Informationen zu RPM-Abfragen . Weitere Informationen zu praktischen Fragen .


4

Verwendung rpm -qip:

rpm -qip package_path1 [package_path2 ...]
  • -q - das Paket abfragen
  • -p - Den Paketnamen aus Argumenten abrufen

Es zeigt die folgenden Informationen:

Name
Version
Release
Architecture
Install Date
Group
Size
License
Signature
Source RPM
Build Date
Build Host
Relocations
Packager
Vendor
URL
Summary
Description

Die Manpage spricht nicht über die -iOption im -qKontext. Erzeugt rpm -qp filejedoch nicht die richtige Ausgabe.



0

Verwandte - Infos für installiertes Paket anzeigen:

rpm -qi InstalledPackageName

0

In den obigen Antworten werden viele -i-Optionen verwendet. Der beste Weg, dies zu überprüfen:

Für eine U / min,

rpm -qlp <rpm-name>.rpm

Suchen Sie für alle RPMs mit grep nach Ihrer Datei:

rpm -qpl *.rpm|grep <string or file name>

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.