Gentoo: syslog-ng hängt während des Bootvorgangs

Bereits mehrfach habe ich (hauptsächlich auf „performanteren“ Systemen) festgestellt, dass auf meinen Gentoo-Systemen der Logging-Dienst syslog-ng während des Bootvorgangs (scheinbar) ewig hängenbleibt. Kurioserweise lässt sich der Bootvorgang in solchen Fällen mit mehreren (zufälligen) Tastendrücken wieder anstoßen.

Wie unter anderem dieser Bug-Report (zwar von Debian, ich vermute hier jedoch einen Zusammenhang zu SysV-init bzw. OpenRC) zeigt, liegt die Ursache für die Start-Verzögerung daran, dass syslog-ng zum Starten verhältnismäßig viele Zufallsdaten benötigt. Da der zur Erzeugung der Zufallsdaten benötigte Entropie-Pool zum Boot-Zeitpunkt noch verhältnismäßig „leer“ ist, können die Zufallsdaten nicht schnell genug erzeugt werden.

Abhilfe schafft hier der haveged-Daemon, der Zufallszahlen über das HAVEGE-Verfahren erzeugt. Die Arbeitsweise von haveged wird in der zugehörigen Manpage erläutert. Vereinfacht gesagt wird zur Erzeugung der Zufallsdaten das „Hintergrundrauschen“ der CPU ausgenutzt.

In meinen Tests ließen sich die Boot-Zeiten mit haveged stets auf ein normales Maß reduzieren. Die Installation ist dabei sehr simpel, eine weitere Konfiguration ist nicht erforderlich:

emerge sys-apps/haveged
rc-update add haveged boot

Fertig.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.