GNU/Linux >> Linux Esercitazione >  >> Linux

Come istruire Yum a installare una versione specifica del pacchetto X?

Se sono disponibili due (o più) versioni di un determinato RPM in un repository YUM, come posso istruire yum installare la versione che desidero?

Guardando attraverso il servizio di build Koji noto che ci sono diverse versioni.

Risposta accettata:

Per vedere quali versioni particolari sono disponibili per te tramite yum puoi usare --showduplicates interruttore . Ti fornisce un elenco come "nome pacchetto.architettura     versione":

$ yum --showduplicates list httpd | expand
Loaded plugins: fastestmirror, langpacks, refresh-packagekit
Loading mirror speeds from cached hostfile
 * fedora: mirror.steadfast.net

Available Packages
httpd.x86_64                        2.4.6-6.fc20                         fedora 
httpd.x86_64                        2.4.10-1.fc20                        updates

Per quanto riguarda l'installazione di una versione particolare? Puoi aggiungere le informazioni sulla versione al nome del pacchetto, rimuovendo il nome dell'architettura, in questo modo:

$ sudo yum install <package name>-<version info>

Ad esempio in questo caso se volessi installare la versione precedente, 2.4.6-6 farei quanto segue:

$ sudo yum install httpd-2.4.6-6

Puoi anche includere le informazioni sulla versione quando specifichi un pacchetto. In questo caso, poiché ho a che fare con Fedora 20 (F20), le informazioni sulla versione sarebbero "fc20" e anche le informazioni sull'architettura.

$ sudo yum install httpd-2.4.6-6.fc20
$ sudo yum install httpd-2.4.6-6.fc20.x86_64

recupero

Se non sei sicuro di costruire correttamente gli argomenti, puoi consultare repoquery anche.

$ sudo yum install yum-utils  # (to get `repoquery`)
$ repoquery --show-duplicates httpd-2.4*
httpd-0:2.4.6-6.fc20.x86_64
httpd-0:2.4.10-1.fc20.x86_64

download e installazione

Puoi anche utilizzare una delle seguenti opzioni per scaricare un particolare RPM dal Web, quindi utilizzare yum per installarlo.

$ yum --downloadonly <package>
-or-
$ yumdownloader <package>

E poi installalo in questo modo:

$ sudo yum localinstall <path to rpm>

E se volessi scaricare tutto ciò che il pacchetto X richiede?

$ yumdownloader --resolve <package>

Esempio

$ yumdownloader --resolve vim-X11
Loaded plugins: langpacks, presto, refresh-packagekit
Adding en_US to language list
--> Running transaction check
---> Package vim-X11.x86_64 2:7.3.315-1.fc14 set to be reinstalled
--> Finished Dependency Resolution
vim-X11-7.3.315-1.fc14.x86_64.rpm                              | 1.1 MB     00:01

Si noti che sta eseguendo un controllo delle dipendenze e quindi scaricando i pezzi mancanti. Vedi la mia risposta che lo copre in maggiori dettagli qui:Come scaricare un file dal repository e installarlo in un secondo momento senza connessione a Internet?.

Riferimenti

  • Fai installare yum per una versione specifica del pacchetto

Linux
  1. Come installare una versione specifica del pacchetto utilizzando YUM

  2. Come installare e gestire il software su CentOS 7

  3. CentOS / RHEL:come installare una versione specifica del pacchetto rpm utilizzando YUM

  4. Come installare jq sull'istanza amazon EC2

  5. Come installare un file .dsc su Linux

Come installare YUM su RHEL 8 / CentOS 8

Come installare una versione specifica del kernel in CentOS

Come installare una versione specifica del pacchetto su Ubuntu e Debian

Come installare una versione precedente del pacchetto come Liquid 2.2.2?

Come installare il filato su Ubuntu 18.04

Come installare MongoDB versione 4.0 su Centos 7?