Yum-Plugins

Aus Fedorawiki.de

Wechseln zu: Navigation, Suche
Dieser Artikel ist Teil der Tipps & Tricks Sammlung

Yum verfügt über eine Reihe von Plugins, die das Arbeiten damit vereinfachen sollen. Diese können unter dem angegebenen Namen installiert werden. Die Konfigurationsdateien der jeweiligen Plugins liegen im Verzeichnis /etc/yum/plugins.d/. Dort werden sie aber, falls nicht anders angegeben, nur durch eine Option an- oder abgeschaltet. Zu den Plugins gibt es dabei bisher leider noch keine Manpage. Oftmals sind aber in der entsprechenden Python-Datei /usr/lib/yum-plugins/<Pluginname>.py ein paar Hinweise gegeben.

Die hier aufgeführten Plugins können als Paket direkt mit yum oder Pirut installiert werden. Der entsprechende Paketname eines Plugins ergibt sich dabei aus dem Präfix yum- und dem Namen selbst. Beispiel: yum-allowdowngrade.


Inhaltsverzeichnis

allowdowngrade

Durch allowdowngrade besteht die Möglichkeit, ein Paket durch eine Angabe beim Kommandoafruf von yum manuell auf eine bestimmte Version zu downgraden.

Beispiele:'


arch

Dieses Plugin stellt nur den aus dem alten yum-2.2.2 bekannten Befehl yum-arch bereit. Damit sollten Repository-Informationen für Fedora Core 1 und 2 und bis Red Hat Enterprise Linux 3 generiert werden.

basearchonly

yum-basearchonly sorgt dafür, dass bei einem yum install nur die Pakete der jeweiligen Architektur installiert werden. Dies kann nützlich auf x86_64-Systemen sein, um so dafür zu sorgen, dass i386-Pakete nicht installiert werden. Diese müssen dann explizit über die Architektur installiert werden, z.B.:

[root]# yum install Paketname.i386

Das Plugin funktioniert dabei nur beim Aufruf von yum install. In der Datei /etc/yum/pluginconf.d/basearchonly.conf können dabei Pakete manuell in einer Whitelist freigeschaltet werden.


changelog

changelog ermöglicht es, bei Updates das Changelog des zu aktualisierenden Paketes einzusehen.

Beispiel:

[root]# yum --changelog update <Paketname>
[root]# yum --changelog update

In der Konfigurationsdatei /etc/yum/pluginconf.d/changelog.conf kann dabei eingestellt werden, ob die Anzeige der Änderungen vor oder nach der Aktualisierung geschehen soll.

cron

yum-cron stellt die benötigten Dateien bereit, um Updates als Cronjob einspielen zu lassen. Dies wurde seit Fedora Core 6 aus yum selbst entfernt und steht nun als Plugin wieder bereit. Es werden dabei zwei Skripte ausgeführt:

  • /etc/cron.daily/yum.cron: Dies aktualisiert das System oder listet nur die neuen Pakete auf
  • /etc/cron.weekly/yum.cron: Dies löscht einmal in der Woche die Pakete aus dem Cache

In der Datei /etc/sysconfig/yum-cron kann angegeben werden, ob nur auf neue Updates geprüft wird, ohne sie zu installieren. Das zeitliche Ausführen der Cronjobs hängt davon ab, wann cron die täglichen und wöchentlichen Cronjobs ausführt. Dies ist in der Datei /etc/crontab definiert.

downloadonly

downloadonly lädt das angegebene Paket nur herunter, führt aber keine weitere Aktion aus.

Beispiele:

[root]# yum --downloadonly install <Paketname>
[root]# yum --downloadonly update <Paketname>
[root]# yum --downloadonly update


fastestmirror

fastestmirror verwaltet eine Liste der schnellsten Mirrors. Dadurch greift yum automatisch immer auf den am schnellsten zu erreichbaren Mirror zu. In /etc/yum/pluginconf.d/fastestmirror.conf können dabei noch ein paar weitere Einstellungen getroffen werden.


fedorakmod

fedorakmod behandelt die Installation von kmod-Kernelmodulen, wenn ein neuer Kernel installiert ist.


kernel-module

kernel-module behandelt die Installation von Kernelmodulen im kernel-module-<module name>-<uname -r>-Format, wenn ein neuer Kernel installiert wird.

merge

Dieses Plugin fragt bei Aktivierung durch die Option --merge-conf, ob veränderte Konfigurationsdateien zusammengeführt werden sollen.

presto

Mit presto werden bei Updates nur sogenannte Delta-RPMs heruntergeladen. Diese beinhalten nur die veränderungen zum vorherigen RPM und sind dadurch deutlich kleiner. So kann die benutzte Bandbreite bei Aktualisierungen stark reduziert werden. Konfiguriert wird presto dabei, indem die betreffenden Repositories in /etc/yum/plugins.d/presto.conf auskommentiert werden.

priorities

Mit 'priorities werden ähnlich wie bei yum-protectbase bestimmte Repositories bevorzugt behandelt. Diesmal können sie aber feiner eingestellt werden und ähneln dabei dem Pinning bei apt. Bei den Repo-Dateien unter /etc/yum.repos.d/ muss dabei für die zu bevorzugenden Repositories folgendes hinzugefügt werden:

priority=N

"N" ist dabei eine Zahl von 1 bis 99, wobei 99 der Standardwert ist. Je kleiner die angegebene Zahl, des mehr wird dieses Repository bevorzugt.

Tipp Tipp: Folgende Werte sind empfehlenswert, wenn man großen Wert auf Stabilität legt.
Fedora Core- und Updates-Repository: Priority=1
Fedora Extras-Repository: Priority=2

Für die die Repositories von dritten (Livna etc) sollte entweder keine Priority festgelegt werden oder eine Priority >= 3.

Anmerkung Anmerkung: Durch diese Einstellungen wird gewährleistet, das keine Fedora-Pakete durch Repositories dritter überschrieben werden. Dies kann jedoch bei einigen Repositories zu Problemen führen.

Desweiteren kann für jedes Repository entschieden werden, ob höher bevorzugte Repositories gegen niedrigere Repositories geschützt werden sollen. Dazu muss folgende Zeile in die Datei /etc/yum/pluginconf.d/priorities.conf eingetragen werden:

check_obsoletes=1


protectbase

protectbase schützt bestimmte, definierte Repositories , so dass keine Pakete aus anderen Repositories die Pakete aus diesen Repositories ersetzen. Dazu muss in der entsprechenden Repo-Datei unter /etc/yum.repos.d/ bei dem gewünschten Repository folgendes hinzugefügt werden:

protect=yes


Achtung Achtung: Falls yum-protectbase zum Einsatz kommt, sollte unbedingt darauf geachtet werden, dass das Repository für Updates von Fedora (/etc/yum.repos.d/fedora-updates.repo) ebenfalls mit protect=yes markiert wird. Sonst gibt es für viele Pakete keine Updates mehr.


protect-packages

protect-packages bewahrt definierte Pakete davor, dass sie versehentlich über yum deinstalliert werden. Das einzige vorkonfigurierte Paket ist dabei yum selbst (und seine Abhängigkeiten). Weitere können in der anzulegenden Datei /etc/sysconfig/protected-packages oder in mehreren Dateien, die auf *.list im Verzeichnis /etc/sysconfig/protected-packages.d/ enden, definiert werden. Es muss dabei ein Paket pro Zeile angegeben werden.

security

Dieses Plugin bietet die Option, nur sicherheitsrelevante Updates einzuspielen.

[root]# yum --security update


skip-broken

skip-broken fügt einen Schalter hinzu, der ein Update auch dann erlaubt, wenn einzelne Pakete unerfüllte Abhängigkeiten haben. Diese werden dann übersprungen.

[root]# yum --skip-broken update


tsflag

tsflags bietet die Möglichkeit, weitere Befehle auf der Kommandozeile einzugeben.

updateonboot

updateonboot aktualisiert alle Pakete des Computers, sobald er hochgefahren wird. Damit das Plugin aktiv wird, muss es noch für die entsprechenden Runlevel aktiviert werden:

[root]# chkconfig --level 2345 yum-updateonboot on

In der Datei /etc/sysconfig/yum-updateonboot können noch ein paar weitere Einstellungen getroffen werden.

versionlock

versionlock ermöglicht es, bestimmte, definierte Pakete nicht durch neuere Versionen ersetzen zu lassen. Die Pakete müssen dabei in der Datei /etc/yum/pluginconf.d/versionlock.list angegeben werden.


Links