BEZEICHNUNG
systemd.kill - Konfiguration für das Verfahren zum Töten von ProzessenÜBERSICHT
service.service, socket.socket, mount.mount, swap.swap, scope.scopeBESCHREIBUNG
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
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=
•der Beendigung des Hauptprozesses
(gilt für KillMode=: mixed)
•Ablauf der mittels
TimeoutStopSec= konfigurierten Verzögerung (gilt für
KillMode=: control-group, mixed, process)
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 Übersetzersystemd 252 |