Wenn zwei (oder mehr) Versionen eines bestimmten RPM in einem YUM-Repository verfügbar sind, wie kann ich yum
anweisen die gewünschte Version installieren?
Beim Durchsehen des Koji-Build-Service stelle ich fest, dass es mehrere Versionen gibt.
Akzeptierte Antwort:
Um zu sehen, welche bestimmten Versionen Ihnen über yum
zur Verfügung stehen Sie können --showduplicates
verwenden schalten . Sie erhalten eine Liste wie „Paketname.Architektur Version“:
$ 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
Was die Installation einer bestimmten Version angeht? Sie können die Versionsinformationen an den Namen des Pakets anhängen und den Architekturnamen wie folgt entfernen:
$ sudo yum install <package name>-<version info>
Wenn ich in diesem Fall beispielsweise die ältere Version 2.4.6-6 installieren möchte, würde ich Folgendes tun:
$ sudo yum install httpd-2.4.6-6
Sie können auch die Versionsinformationen bei der Angabe eines Pakets angeben. Da ich es in diesem Fall mit Fedora 20 (F20) zu tun habe, wäre die Release-Info „fc20“ und die Architekturinfo auch.
$ sudo yum install httpd-2.4.6-6.fc20
$ sudo yum install httpd-2.4.6-6.fc20.x86_64
Wiederherstellung
Wenn Sie sich jemals nicht sicher sind, ob Sie die Argumente richtig konstruieren, können Sie sich mit repoquery
beraten auch.
$ 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
herunterladen und installieren
Sie können auch eine der folgenden Optionen verwenden, um ein bestimmtes RPM aus dem Internet herunterzuladen, und dann yum
verwenden um es zu installieren.
$ yum --downloadonly <package>
-or-
$ yumdownloader <package>
Und dann installieren Sie es wie folgt:
$ sudo yum localinstall <path to rpm>
Was ist, wenn ich alles herunterladen möchte, was Paket X benötigt?
$ yumdownloader --resolve <package>
Beispiel
$ 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
Beachten Sie, dass es eine Abhängigkeitsprüfung durchführt und dann die fehlenden Teile herunterlädt. Siehe meine Antwort, die es hier ausführlicher behandelt:Wie lade ich eine Datei aus dem Repo herunter und installiere sie später ohne Internetverbindung?.
Referenzen
- Bitte yum, eine bestimmte Paketversion zu installieren