Wie überprüfe ich verfügbare Paketversionen in RPM-Systemen?


58

Wenn ich in Debian verfügbare Versionen eines Pakets überprüfen möchte, führe ich Folgendes apt-cache policy pkgnameaus wajig:

wajig:
  Installed: 2.01
  Candidate: 2.01
  Version table:
 *** 2.01 0
        100 /var/lib/dpkg/status
     2.0.47 0
        500 file:/home/wena/.repo_bin/ squeeze/main i386 Packages
        500 ftp://ftp.is.co.za/debian/ squeeze/main i386 Packages

Das bedeutet, dass es drei Wajig-Pakete gibt, eines, das installiert ist ( /var/lib/dpkg/status), und zwei andere (die die gleiche Version haben). Eine dieser beiden befindet sich in einem lokalen Repository und die andere ist in einem Remote-Repository verfügbar.

Wie erreiche ich auf RPM-Systemen ein ähnliches Ergebnis?

Antworten:


76

yum Für RHEL / Fedora / Centos / Scientific Linux

Stellt den Befehl listzum Anzeigen von Informationen zu installierten und aktualisierbaren (und älteren) Paketen bereit.

yum --showduplicates list <package>

zypper Für SuSE Linux

Kann eine detaillierte Liste der verfügbaren und installierten Pakete oder Patches zurückgeben.

zypper search -s <package>

Das Hinzufügen --exact-matchkann hilfreich sein, wenn mehrere Pakete vorhanden sind.

Als Randnotiz ist hier ein Vergleich der Paketverwaltungsbefehle.


7
Sie sollten auch hinzufügen --showduplicates, yumwenn Sie ALLE verfügbaren Versionen anzeigen möchten, nicht nur die neuesten.
Steve Shipway

Die Option --exact-match scheint weder für yum noch für zypper verfügbar zu sein ...
Chris Maes

15

Sie können verwenden rpm -qi <package name>, um alle Informationen des installierten Pakets zu haben. Sie können auch die folgenden Befehle verwenden:

yum info <package name>
yum list <package name>
yum --showduplicates list <package name>

2
Alle außer dem letzten dort zeigen nur Informationen über die "installierte" Version FWIW an. Aber der --showduplicatesfunktioniert, danke!
Rogerdpack

5

In den anderen Antworten wird beschrieben, wie Sie Informationen zu den auf dem System installierten Paketen erhalten. Um das zu ergänzen, ist es auch möglich, das yum-Repository zusätzlich mit dem pkcon searchBefehl von PackageKit nach verfügbaren, noch nicht installierten Paketen abzufragen , z

$ pkcon search name xz
Searching by name             [=========================]         
Starting                      [=========================]         
Querying                      [=========================]         
Available       pxz-4.999.9-2.beta.20100608git.fc15.i686        Parallel LZMA compressor using XZ
Installed       xz-5.0.3-1.fc15.i686                            LZMA compression utilities
Available       xz-compat-libs-5.0.1-2.fc15.i686                Compatibility libraries for decoding LZMA compression
Available       xz-compat-libs-5.0.3-1.fc15.i686                Compatibility libraries for decoding LZMA compression
Installed       xz-debuginfo-5.0.3-1.fc15.i686                  Debug information for package xz
Installed       xz-devel-5.0.3-1.fc15.i686                      Devel libraries & headers for liblzma
Installed       xz-libs-5.0.3-1.fc15.i686                       Libraries for decoding LZMA compression
Installed       xz-lzma-compat-5.0.3-1.fc15.i686                Older LZMA format compatibility binaries
Installed       xzgv-0.9.1-3.fc15.i686                          Picture viewer
$

Ich gehe davon aus, dass PackageKit generisch geschrieben ist, sodass es auch mit apt-Repositorys funktioniert, obwohl ich nur Erfahrung mit der Verwendung auf meinen Fedora-Systemen habe.


3

Um die verfügbaren Pakete abzufragen, können Sie Folgendes tun: urpmq --sources YOURPACKAGE Dies ist Mandriva-spezifisch (ich kenne nur Mandriva).

Wenn Sie die Version eines installierten Pakets wissen möchten: rpm -q YOURPACKAGE Dies funktioniert auf allen RPM-Systemen.

Auf RedHat / Fedora, siehe yum.


3

Wenn Sie die folgenden Befehle ausführen, erhalten Sie alle auf dem Server installierten Pakete.

rpm -qa | grep <packagename>

Weitere rpm-Befehle sind hier aufgelistet

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.