Come verificare le versioni dei pacchetti disponibili nei sistemi rpm?


59

Se voglio controllare le versioni disponibili di un pacchetto in Debian, eseguo apt-cache policy pkgnameche nel caso di wajigdà:

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

Ciò significa che ci sono tre pacchetti wajig, uno installato ( /var/lib/dpkg/status) e altri due (che sono la stessa versione). Uno di questi due si trova in un repository locale e l'altro è disponibile da un repository remoto.

Come posso ottenere un risultato simile sui sistemi rpm?

Risposte:


77

yum Per RHEL / Fedora / Centos / Scientific Linux

Fornisce il comando listper visualizzare informazioni sui pacchetti installati e aggiornabili (e precedenti).

yum --showduplicates list <package>

zypper per SuSE Linux

Può restituire un elenco dettagliato di pacchetti o patch disponibili e installati.

zypper search -s <package>

L'aggiunta --exact-matchpuò aiutare, se ci sono più pacchetti.

Come nota a margine, ecco un confronto tra i comandi di gestione dei pacchetti.


7
Si dovrebbe anche aggiungere --showduplicatesper yumse volete vedere tutte le versioni disponibili, non è solo l'ultima.
Steve Shipway

l'opzione --exact-match non sembra essere disponibile per yum né per zypper ...
Chris Maes

15

È possibile utilizzare rpm -qi <package name>per avere tutte le informazioni sul pacchetto installato. Puoi usare anche i seguenti comandi:

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

2
Tutti tranne l'ultimo lì mostrano solo informazioni sulla versione "installata" FWIW. Ma --showduplicatesquello funziona, grazie!
rogerdpack

5

Le altre risposte spiegano come ottenere informazioni sui pacchetti installati sul sistema. Per aggiungere a ciò, è anche possibile interrogare il repository yum sui pacchetti disponibili non ancora installati oltre al pkcon searchcomando da PackageKit, ad es.

$ 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
$

Suppongo che PackageKit sia scritto in modo generico in modo che funzioni anche con repository apt, anche se ho esperienza solo nell'usarlo sui miei sistemi Fedora.


3

Per interrogare i pacchetti disponibili, puoi fare urpmq --sources YOURPACKAGE questo è specifico per Mandriva (conosco solo Mandriva).

Se vuoi conoscere la versione di un pacchetto installato: rpm -q YOURPACKAGE funziona su tutti i sistemi RPM.

Su RedHat / Fedora, vedi yum.


3

L'esecuzione dei comandi seguenti ti darà tutti i pacchetti installati sul server.

rpm -qa | grep <packagename>

Altri comandi rpm sono elencati qui

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.