SYSTEMD.SCOPE(5) systemd.scope SYSTEMD.SCOPE(5) BEZEICHNUNG systemd.scope - Bereichs-Unit-Konfiguration UBERSICHT Bereich.scope BESCHREIBUNG Bereichs-Units werden nicht uber Unit-Konfigurationsdateien konfiguriert, sondern werden nur programmatisch mittels der Bus-Schnittstellen von Systemd erstellt. Sie sind ahnlich zu Dateinamen benannt. Eine Unit, deren Namen auf >>&.scope<< endet, bezieht sich auf eine Bereichs-Unit. Bereichs-Units verwalten eine Gruppe von Systemprozessen. Anders als Dienste-Units verwalten Bereichs-Units extern erstellte Prozesse und erstellen selbst keine Prozesse mittels >>fork<<. Der Hauptzweck von Bereichs-Units ist die Gruppierung von Arbeitsprozessen eines Systemdienstes fur die Organisation und die Verwaltung von Ressourcen. systemd-run --scope kann zum leichten Starten eines Befehls in einer neuen Bereichs-Unit von der Befehlszeile aus verwandt werden. Siehe die Neue Control-Gruppen-Schnittstelle[1] fur eine Einfuhrung, wie fur Programme Bereichs-Units eingesetzt werden konnen. Beachten Sie, dass Bereichs-Units, anders als Dienste-Units, keinen >>Hauptprozess<< haben, alle Prozesse im Bereich sind aquivalent. Der Lebenszyklus der Bereichs-Unit ist nicht an die Lebensdauer eines bestimmten Prozesses gebunden, sondern an die Existenz von mindestestens einem Prozess im Bereich. Das bedeutet auch, dass der Exit-Status eines Prozesses nicht relevant fur den Fehlerzustand der Bereichs-Unit ist. Bereichs-Units konnen weiterhin einen Fehlerzustand einnehmen, beispielsweise aufgrund von Ressourcenerschopfung und dem Erreichen von Zeituberschreitungen, aber nicht aufgrund unsauberer Beendigungen von Programmen innerhalb der Unit. Da die Prozesse, die als Bereichs-Unit verwaltet werden, im Allgemeinen Kindprozess des ursprunglichen Prozesses, der sie per Fork gestartet hat, bleiben, ist es auch die Aufgabe dieses Prozesses, ihre Exit-Status einzusammeln und entsprechend zu reagieren. AUTOMATISCHE ABHANGIGKEITEN Implizite Abhangigkeiten Wie in systemd.resource-control(5) dokumentiert, konnen implizite Abhangigkeiten als Ergebnis von Ressourcensteuerungsparametern hinzugefugt werden. Standardabhangigkeiten Die folgenden Abhangigkeiten werden hinzugefugt, es sei denn, DefaultDependencies=no ist gesetzt: o Bereichs-Units erhalten automatisch Abhangigkeiten vom Typ Conflicts= und Before= von shutdown.target. Dies stellt sicher, dass Bereichs-Units vor dem Herunterfahren entfernt werden. Nur Bereichs-Units, die in der fruhen Systemstartphase oder im spaten Herunterfahren involviert sind, sollten die Option DefaultDependencies= deaktivieren. OPTIONEN Bereichs-Dateien konnen einen Abschnit [Unit] enthalten, der in systemd.unit(5) beschrieben ist. Bereichs-Units konnen einen Abschnitt >>[Scope]<< enthalten, der Informationen uber den Bereich und die darin enthaltenen Units weitergibt. Eine Reihe von Optionen, die in diesem Abschnitt verwandt werden, werden auch von anderen Unit-Typen verwendet. Diese Optionen sind in systemd.kill(5) und systemd.resource-control(5) dokumentiert. Folgende Optionen sind spezifisch fur den Abschnitt >>[Scope]<< von Bereichs-Units: OOMPolicy= Konfiguriert die Richtlinie fur die Speichererschopfungs- (OOM-)Beendigung fur den Kernel und den OOM-Klller im Anwendungsraum systemd-oomd.service(8). Wenn unter Linux der Speicher so knapp wird, dass der Kernel Schwierigkeiten bekommt, Speicher fur sich selbst zu reservieren, dann kann er sich entscheiden, laufende Prozesse zu beenden, um Speicher freizugeben und den Speicherdruck zu reduzieren. Beachten Sie, dass systemd-oomd.service(8) eine flexiblere Losung ist, die zu verhindern versucht, dass Speichererschopfungssituationen im Anwendungsraum auftreten, nicht nur im Kernel, indem versucht wird, Dienste fruher zu beenden, bevor der Kernel agieren musste. Diese Einstellung akzeptiert entweder continue, stop oder kill. Falls auf continue gesetzt und ein Prozess in der Unit vom OOM-Killer beendet wird, wird dies protokolliert aber die Unit lauft weiter. Falls auf stop gesetzt, wird das Ereignis protokolliert, aber die Unit wird sauber durch den Diensteverwalter beendet. Falls auf kill gesetzt und einer der Prozesse der Unit wird durch den OOM-Killer beendet, wird der Kernel angewiesen, auch alle verbleibenden Prozesse der Unit durch Setzen des Attributes memory.oom.group auf 1 durch den OOM-Killer zu beenden; siehe auch die Kernelseite Control-Gruppe v2[2]. Standardmassig der Wert, auf den die Einstellung DefaultOOMPolicy= in systemd-system.conf(5) gesetzt ist, ausser bei Units, bei denen Delegate= eingeschaltet ist, wo die Vorgabe continue ist. Verwenden Sie die Einstellung OOMScoreAdjust=, um zu konfigurieren, ob Prozesse der Unit als bevorzugte oder weniger bevorzugte Kandidaten fur Prozessbeendigungen durch die Logik des OOM-Killers von Linux betrachtet werden sollen. Siehe systemd.exec(5) fur Details. Diese Einstellung gilt auch fur systemd-oomd.service(8). Ahnlich wie beim vom Kernel durchgefuhrten Kernel-OOM-Totungen bestimmt diese Einstellung den Zustand der Unit, nachdem systemd-oomd(8) eine ihr zugeordnete Cgroup beendet hat. Hinzugefugt in Version 243. RuntimeMaxSec= Konfiguriert eine maximale Laufzeit fur den Bereich. Falls dies verwandt wird und die Unit langer als die festgelegte Zeit aktiv war, wird sie beendet und in einen Fehlerzustand gebracht. Ubergeben Sie >>infinity<< (die Vorgabe), um keine Laufzeitbegrenzung zu konfigurieren. Hinzugefugt in Version 244. RuntimeRandomizedExtraSec= Diese Option verandert RuntimeMaxSec= durch Erhohung der maximalen Laufzeit mit einer gleichverteilten Dauer zwischen 0 und dem festgelegten Wert (in Sekunden). Falls RuntimeMaxSec= nicht festgelegt ist, wird diese Funktionalitat deaktiviert. Hinzugefugt in Version 250. Lesen Sie systemd.unit(5), systemd.exec(5) und systemd.kill(5) fur weitere Einstellungen. SIEHE AUCH systemd(1), systemd-run(1), systemd.unit(5), systemd.resource-control(5), systemd.service(5), systemd.directives(7). ANMERKUNGEN 1. Neue Control-Gruppen-Schnittstellen https://www.freedesktop.org/wiki/Software/systemd/ControlGroupInterface 2. Control-Gruppe v2 https://docs.kernel.org/admin-guide/cgroup-v2.html UBERSETZUNG Die deutsche Ubersetzung dieser Handbuchseite wurde von Helge Kreutzmann erstellt. Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezuglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG ubernommen. Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Ubersetzer . systemd 255 SYSTEMD.SCOPE(5)