Gentoo Hardened Tips und Tricks
From RootForum Community » Wiki
Einleitung
An dieser Stelle sind diverse Tips und Tricks rund um die Administration eines Gentoo Linux basierten Servers aufgeführt.
Als guter Gentoo Admin wirft man regelmässig einen Blick in den Gentoo Bugzilla und die Gentoo Foren, um ständig über eventuell auftretende Probleme mit den eingesetzten Paketen informiert zu sein. Ebenfalls sehr informativ sind die Gentoo Dokumentation, die diversen Gentoo Mailinglists und der Gentoo Planet. Benötigt man dann doch einmal schnelle Hilfe, bietet sich das Fragen im passenden Gentoo IRC-Channel förmlich an.
Updates
Wie bei allen anderen Betriebssystemen auch, muss auch ein Gentoo System regelmässig mit Updates versorgt werden.
Hierzu muss zunächst der Portage-Tree aktualisiert werden:
emerge --syncAnschliessend lässt man sich eine Liste der zu aktualieserenden Pakete anzeigen:
emerge -pDNuv worldBevor man nun die Pakete aktualisiert, kann man sich noch die ChangeLogs ansehen:
less /usr/portage/$CATEGORY/$PAKET/ChangeLog
Um einzelne Pakete zu aktualisieren reicht ein einfacher emerge:
emerge -u $PAKET
Das Aktualisieren des Systems beziehungsweise mehrerer Pakete gleichzeitig funktioniert analog zum Aktualisieren einzelner Pakete, lediglich der Aufruf von emerge ist unterschiedlich:
emerge -DNu worldManche Updates betreffen nicht nur das zu aktualisierende Paket, sondern auch andere davon abhängige Pakete. Diese abhängigen Pakete lassen sich einfach mittels revdep-rebuild aus dem gentoolkit Paket ermitteln und anschliessend rekompilieren:
revdep-rebuild -p
revdep-rebuildAbschliessend sind noch eventuelle Aktualisierungen an Konfigurationsdateien und Init-Scripts zu prüfen und gegebenenfalls auch gleich automatisch durchzuführen. Beides lässt sich mittels etc-update erledigen, wobei das automatische Aktualisieren von Konfigurationsdateien nicht immer empfehlenswert ist und daher manuell durchgeführt werden sollte:
etc-udate
System-Hygiene
Viele Pakete sind abhängig von anderen Paketen. Bei der Installation löst emerge diese Abhängigkeiten automatisch auf und installiert benötigte Pakete automatisch mit. Bei der Deinstallation hingegen wird nur das explizit angegebene Paket gelöscht, so dass sich im Laufe der Zeit eine Menge Pakete ansammelt, die ursprünglich als Abhängigkeit auf den Rechner gelangt sind. Um Pakete zu löschen, die nicht explizit installiert wurden, und die auch von keinem anderen Paket mehr als Abhängigkeit benötigt werden, bietet emerge ebenfalls eine passende Option:
emerge --depcleanNach einer solchen Reinigungsaktion bietet es sich an, revdep-rebuild wie oben beschrieben einzusetzen, um sicherzustellen, dass keine Abhängigkeiten zerstört wurden.
Manche ebuilds werden von Gentoo in "Slots" installiert. Dies betrifft insbesondere Programme oder Bibliotheken, die als Abhängigkeit von anderen ebuilds benötigt werden, dabei aber in verschiedenen Versionen vorliegen. Prominente Beispiele sind Python oder die Berkeley DB. Wird nun ein solcher ebuild nicht mehr benötigt (da abhängige ebuilds aktualisiert oder deinstalliert wurden), wird er nicht automatisch deinstalliert. Aber auch hier hilft emerge bei der Systemhygiene:
emerge --pruneAuch hiernach ist der Einsatz von revdep-rebuild dringend geboten, um die Konsistenz des Systems zu gewährleisten.