yum (Yellow dog Updater, Modified) ist ein RPM-Paketmanagement-Programm, das, ähnlich wie apt4rpm, automatisch Abhängigkeiten auflöst. Die Syntax ist relativ einfach und yum ist nicht so penibel wie apt. Das Erstellen eigener Installationsquellen (repositories) ist einfacher. yum ist v.a. auf Fedora sehr zu empfehlen, da er im Gegensatz zu RedHats up2date deutlich schneller funktioniert.

Homepage: http://www.linux.duke.edu/projects/yum/

Lizenz: GPL

Features

Tipps & Tricks

Download zu langsam?

Wenn yum so konfiguriert ist, dass er per Zufall aus einer Mirror-Liste herunterlädt kann es sein, dass er einen sehr langsamen Mirror erwischt. Ein Ctrl-C schafft hier Abhilfe. Es bricht nicht die ganze Aktion ab, sondern nur den einen Download. yum versucht es dann mit dem nächsten Mirror. /!\ Gibt es keine weiteren Mirrors, wird die ganze Aktion abgebrochen!

Grafische Oberfläche?

siehe YumEx

Mini-Howto

Repositories

Eigenes Repository erstellen

Altes yum

Eine "Repository" ist eine Installationsquelle. Um von dem eigenen Rechner (oder auch von einem gemounteten Verzeichnis) Pakete zu installieren, geht man am besten so vor:

yum-arch /pfad/zu/verzeichnis/mit/rpms

(Unterverzeichnisse werden mit durchsucht)

und in /etc/yum.conf eintragen:

[lokale Pakete]
name=Meine RPMs
baseurl=/pfad/zu/verzeichnis/mit/rpms

Neues yum

(Ab Version 2.?? )

In dem neueren yum wurde die Funktion der Datei /etc/yum.conf geändert. Dort sind jetzt keine Repositories mehr zu finden. Stattdessen gibt es ein Verzeichnis /etc/yum.repos.d/. Dieses enthält voreingestellt einige Dateien, die die Hauptrepositories beschreiben und mit ".repo" enden. In einer ".repo"-Datei kann man das Repository über "enabled=0" per Voreinstellung abschalten. Dann muss man, wenn man dennoch ausnahmsweise ein Paket daraus (z.B. fedora-devel) installieren möchte, etwas angeben wie: yum install --enablerepo=fedora-devel [paketname]

Pakete installieren/updaten/entfernen

Installieren/Deinstallieren/Updaten

Installation von RPMs

yum install paket

Upgrade einzelner Pakete (nur bereits installierte Pakete)

yum update [paket]

Upgrade des kompletten Systems

yum upgrade

Deinstallation von Paketen

yum remove [paket]

Paketsuche

Welches Paket enthält Datei oder Feature

yum provides [dateiname]

Gibt es dieses Paket

yum list [paket]

Paketnamen und Beschreibungen durchsuchen

yum search [begriff]

Informationen anzeigen

Verfügbare Pakete anzeigen

yum list available

Updatebare Pakete anzeigen

yum list updates

Aufräumen

Löschen von Paketen/Headern/Metadaten/Cache/Allem

yum clean [ packages | headers | metadata | cache | all ]

Anmerkung: Für "paket" kann man auch Namensteile nehmen; wenn man z.B. etwas mit allen Paketen machen will, so geht das auch via 'gnome*' (natürlich gibt es auch Pakete bei GNOME die anders anfangen, z.B. "libgnome-"). Wichtig sind dabei die Anführungszeichen als Klammerung, weil ansonsten der Verzeichnisinhalt des aktuellen Verzeichnisses zur Vervollständigung des Namens durchsucht wird!

Gruppenbildung

Neuere yum-Versionen unterstützen Paketgruppen. Ein yum grouplist beispielsweise gibt eine Liste der installierten und verfügbaren Gruppen aus, z.B. "Administration Tools", "GNOME Desktop Environment", usw. Um zum Beispiel alle Pakete einer Gruppe zu aktualisieren, kann man yum groupupdate "GNOME Desktop Environment" eingeben.

Installationskonflikte

Folgendes Problem kann beim Mischen verschiedener Repositories, die nicht auf Kompatibilität untereinander achten, auftreten. Hier bei der Installation von InkScape:

# yum install inkscape
Setting up Install Process
...
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package inkscape.i386 0:0.39-1.1.fc3.rf set to be installed
--> Running transaction check
--> Processing Dependency: perl(SVG) for package: inkscape
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package inkscape.i686 0:0.39-0.fdr.1.2 set to be installed
--> Running transaction check
Dependencies Resolved
Transaction Listing:
  Install: inkscape.i386 0:0.39-1.1.fc3.rf
Performing the following to resolve dependencies:
  Install: inkscape.i686 0:0.39-0.fdr.1.2
Is this ok [y/N]: y
Downloading Packages:
Running Transaction Test
Finished Transaction Test
Transaction Check Error:   file /usr/bin/inkscape conflicts between attempted installs of inkscape-0.39-0.fdr.1.2 and inkscape-0.39-1.1.fc3.rf
  file /usr/bin/inkview conflicts between attempted installs of inkscape-0.39-0.fdr.1.2 and inkscape-0.39-1.1.fc3.rf

Downgrade

Historie ansehen:

yum history
yum history list
yum history info

Z.B. 5 Eintrag rückgängig machen

yum history undo 5

Leider können dabei Scripte, die bereits ausgeführt sind nicht rückgängig gemacht werden. Und Config-Dateien nachher kontrollieren.

yum (zuletzt geändert am 2016-01-24 13:03:49 durch ppp-88-217-16-195)