BEZEICHNUNG

systemd.kill - Konfiguration für das Verfahren zum Töten von Prozessen

ÜBERSICHT

service.service, socket.socket, mount.mount, swap.swap, scope.scope

BESCHREIBUNG

Unit-Konfigurationsdateien für Dienste, Sockets, Einhängepunkte, Auslagerungsgeräte und Geltungsbereiche nutzen eine Untermenge der Konfigurationsoptionen gemeinsam, die das Verfahren zum Töten von Prozessen, die zu der Unit gehören, definieren.
Diese Handbuchseite listet die Konfigurationsoptionen auf, die von diesen fünf Unit-Typen gemeinsam benutzt werden. Siehe systemd.unit(5) für die Konfiguration der von allen Unit-Typen gemeinsam benutzten Optionen und systemd.service(5), systemd.socket(5), systemd.swap(5), systemd.mount(5) und systemd.scope(5) für weitere Informationen über die Konfigurationsdateioptionen, die für jeden Unit-Typen spezifisch sind.
Die Konfigurationsoptionen für das Verfahren zum Töten werden in den Abschnitten [Service], [Socket], [Mount] oder [Swap], abhängig vom Unit-Typ, konfiguriert.

OPTIONEN

KillMode=
Gibt an, wie die Prozesse dieser Unit getötet werden sollen. Entweder control-group, mixed, process oder none.
 
Falls auf control-group gesetzt, werden alle verbleibenden Prozesse in der Control-Gruppe dieser Unit beim Unit-Stopp getötet (für Dienste: nachdem der Stopp-Befehl ausgeführt wurde, wie in ExecStop= konfiguriert). Falls auf mixed gesetzt, wird das Signal SIGTERM (siehe unten) an den Hauptprozess gesandt, während nachfolgende Signale SIGKILL (siehe unten) an alle verbliebenen Prozesse der Control-Gruppe dieser Unit gesandt werden. Falls auf process gesetzt, wird nur der Hauptprozess selbst getötet (nicht empfohlen!). Falls auf none gesetzt, wird kein Prozess getötet (es wird nachdrücklich dagegen emfohlen!). In diesem Fall wird nur der Befehl Stop beim Unit-Stopp ausgeführt, aber weiter kein Prozess getötet werden. Prozesse, die nach dem Stopp noch existent sind, verbleiben in dieser Control-Gruppe und die Control-Gruppe existiert nach dem Stopp weiterhin, außer sie ist leer.
 
Beachten Sie, dass nicht empfohlen wird, KillMode= auf process oder sogar none zu setzen, da es Prozessen erlaubt, dem Lebenszyklus und der Ressourcenverwaltung des Dienstverwalters zu entkommen und am Laufen zu bleiben, selbst wenn der Dienst als gestoppt und als ohne Ressourcenverbrauch betrachtet wird.
 
Prozesse werden zuerst mittels SIGTERM beendet (falls das zu sendende Signal nicht mittels KillSignal= oder RestartKillSignal= geändert wurde). Optional folgt dann sofort ein SIGHUP (falls mittels SendSIGHUP= aktiviert). Falls nach
 
•der Beendigung des Hauptprozesses (gilt für KillMode=: mixed)
 
•Ablauf der mittels TimeoutStopSec= konfigurierten Verzögerung (gilt für KillMode=: control-group, mixed, process)
 
immer noch Prozesse verbleiben, wird die Beendigungsaufforderung mit dem Signal SIGKILL oder dem mit FinalKillSignal= festgelegten Signal wiederholt (außer dies ist mit der Option SendSIGKILL= deaktiviert). Siehe kill(2) für weitere Informationen.
 
Standardmäßig control-group.
KillSignal=
Gibt an, welches Signal zum Stoppen eines Dienstes verwandt werden soll. Dies steuert, welches Signal im ersten Schritt beim Herunterfahren einer Unit (siehe oben) gesandt werden soll, darauf folgt normalerweise ein SIGKILL (siehe oben und unten). Eine Liste der gültigen Signale finden Sie in signal(7), standardmäßig wird SIGTERM verwandt.
 
Beachten Sie, dass direkt nach dem Senden des in dieser Einstellung festgelegten Signals Systemd immer SIGCONT senden wird, um sicherzustellen, dass selbst suspendierte Prozesse sauber beendet werden können.
RestartKillSignal=
Legt das beim Neustarten eines Dienstes zu verwendende Signal fest. Identisch zu dem oben beschriebenen KillSignal=, mit der Ausnahme, dass diese Einstellung in einem Neustartauftrag verwandt wird. Standardmäßig nicht gesetzt und der Wert von KillSignal= wird verwandt.
SendSIGHUP=
Gibt an, ob SIGHUP sofort nach dem Senden des mittels KillSignal= konfigurierten Signals gesandt werden soll. Dies ist nützlich, um Shells und Shell-ähnlichen Programmen anzuzeigen, dass ihre Verbindung abgetrennt wurde. Akzeptiert einen logischen Wert, standardmäßig wird »no« verwandt.
SendSIGKILL=
Gibt an, ob an verbliebene Prozesse nach einer Zeitüberschreitung SIGKILL (oder das mit FinalKillSignal= festgelegte Signal) gesandt werden soll, falls nach dem normalen Herunterfahrprozess noch Dienste verblieben sind. Wenn deaktiviert, wird ein KillMode= eines control-group- oder mixed-Dienstes nicht neustarten, falls innerhalb der Control-Gruppe Prozesse eines vorherigen Dienstes existieren. Akzeptiert einen logischen Wert, standardmäßig wird »yes« verwandt.
FinalKillSignal=
Gibt an, welches Signal an die verbliebenen Prozesse nach einer Zeitüberschreitung gesandt werden soll, falls SendSIGKILL= aktiviert ist. Das hier konfigurierte Signal sollte eines sein, das typischerweise nicht abgefangen und von Diensten verarbeitet wird ( SIGTERM ist nicht geeignet). Entwickler können dies für die Erstellung von Speicherauszügen verwenden, um zu analysieren, warum sich ein Dienst nicht beim anfänglichen Signal SIGTERM beendet hat. Dies kann erreicht werden, indem LimitCORE= konfiguriert und FinalKillSignal= auf entweder SIGQUIT oder SIGABRT gesetzt wird. Standardmäßig SIGKILL.
WatchdogSignal=
Gibt an, welches Signal zum Beenden des Dienstes verwandt wird, wenn die Watchdog-Zeitüberschreitung abläuft (aktiviert mittels WatchdogSec=). Standardmäßig SIGABRT.

SIEHE AUCH

systemd(1), systemctl(1), journalctl(1), systemd.unit(5), systemd.service(5), systemd.socket(5), systemd.swap(5), systemd.mount(5), systemd.exec(5), systemd.directives(7), kill(2), signal(7)

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <[email protected]> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer