Kategorien

Druckansicht des Beitrags Druckansicht des Beitrags

Gentoo Hacks zu Systemupdates und Paketmanagement

Der Umgang mit dem Paketmanagementsystem ist unter Linux tägliches Handwerkszeug. Dabei gibt es immer wieder ein paar interessante Tricks und Kniffe, die ich hier nun für gentoo beschreiben möchte.

Upgrade des gesamten Systems

Ein Systemupgrade führe ich mit folgenden Schritten durch

# führt ein emerge --sync durch, aktualisiert den lokalen eix-Cache mit eix-update und zeigt die Unterschiede mit eix-diff an
eix-sync
# Overlays auf aktuellen Stand bringen (sofern man welche benutzt)
layman -S
# kurz für emerge --update --deep --newuse --ask --verbose --tree world
emerge -uDNavt world
# überflüssige Pakete entfernen
emerge -av depclean
# findet Pakete, die noch auf alte Programmbibliotheken verweisen und kompiliert diese neu
revdep-rebuild -v -- --ask
# Überflüssige Quellcodes und alte Binärpakete entfernen
eclean -d
# Konfigurationsdateien aktualisieren
dispatch-conf
# Prüfen, ob nicht mehr benötigte Pakete installiert sind
eix-test-obsolete

Auf serverfault.com gibt es eine interessante Diskussion wie man am Besten ein gentoo-System aktualisiert.

Emailbenachrichtigung über sicherheitsrelevante Paketupdates

Damit ich bei Sicherheitslücken in den installierten Programmen informiert werde, habe ich ein Cron-Skript unter /etc/cron.daily/glsa-check erstellt. Dieses ruft glsa-check auf und schickt eine Nachricht, falls eines oder mehrere Programme Sicherheitslücken aufweisen.

#!/bin/sh
export LANG=de_DE.UTF-8
export LANGUAGE=de_DE.UTF-8
# emerge --sync erforderlich, um glsa Meldungen zu bekommen
emerge --sync
glsa-check -n -q -l affected | mail -a "Content-Type: text/plain; charset=UTF-8" -e -s "glsa-check for $HOSTNAME" yourmailaddress@domain.com

Pakete inklusive Konfigurationsdateien vollständig entfernen

Ein einfaches Deinstallieren eines Paketes mit emerge löscht nicht die Konfigurationsdateien. Für den Fall, dass man diese auch löschen möchte, kann man dies tun mit einem

CONFIG_PROTECT="-*" emerge --unmerge package

Spezielle Paketversionen installiert halten

Manchmal möchte man ein Paket nicht aktualisieren und stattdessen die aktuelle Version beibehalten. Nun kann man einfach keine neuere Version installieren. Wenn man das gesamte System wie oben beschrieben aktualisieren oder bereinigen will, ist das natürlich schwierig. Mit einem

emerge -avt --noreplace sys-kernel/hardened-sources-3.10.1-r1

sorgt man dafür, dass emerge ein spezielles Paket in einer Version beibehält (siehe hierzu auch der Artikel Protecting slotted packages from ‚emerge –depclean‘).

1 comment to Gentoo Hacks zu Systemupdates und Paketmanagement

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>