OPTIONEN¶
Alle Optionen werden im Abschnitt »[Manager]«
konfiguriert:
LogColor=, LogLevel=, LogLocation=,
LogTarget=, LogTime=, DumpCore=yes,
CrashChangeVT=no, CrashShell=no, CrashReboot=no,
ShowStatus=yes, DefaultStandardOutput=journal,
DefaultStandardError=inherit
Konfigurieren verschiedene Parameter grundlegender
Verwaltungsaktionen. Diese Optionen können durch die
Befehlszeilenargumente des betreffenden Prozesses und des Kernels außer
Kraft gesetzt werden. Siehe
systemd(1) für Details.
CtrlAltDelBurstAction=
Definiert, welche Aktionen ausgeführt werden,
falls der Benutzer Strg-Alt-Entf mehr als sieben Mal in 2 s drückt.
Kann auf »reboot-force«, »poweroff-force«,
»reboot-immediate«, »poweroff-immediate« gesetzt
oder mittels »none« deaktiviert werden.
Standardmäßig »reboot-force«.
CPUAffinity=
Konfiguriert die CPU-Affinität für den
Diensteverwalter sowie die Vorgabe-CPU-Affinität für alle mit
Fork erstellten Prozesse. Erhält eine Liste von CPU-Indizes oder
Bereichen, die entweder durch Leerraum oder Kommata getrennt sind.
CPU-Bereiche werden durch den unteren und oberen CPU-Index, getrennt durch
einen Bindestrich, festgelegt. Diese Option kann mehr als einmal angegeben
werden, in diesem Fall werden die CPU-Affinitätsmasken
zusammengeführt. Falls die leere Zeichenkette zugewiesen wird, wird die
Maske zurückgesetzt, alle vorherigen Zuweisungen haben keine Wirkung.
Individuelle Dienste können die CPU-Affinität für ihre
Prozesse mit der Einstellung
CPUAffinity= in Unit-Dateien außer
Kraft setzen, siehe
systemd.exec(5).
NUMAPolicy=
Konfiguriert die NUMA-Speicherrichtlinie für den
Diensteverwalter und die Vorgabe-NUMA-Speicherrichtlinie für alle mit
Fork gestarteten Prozesse. Individuelle Dienste können die
Vorgaberichtlinie mit der Einstellung
NUMAPolicy= in Unit-Dateien
außer Kraft setzen, siehe
systemd.exec(5).
NUMAMask=
Konfiguriert die NUMA-Knotenmaske, die der
ausgewählten NUMA-Richtlinie zugeordnet wird. Beachten Sie, dass die
NUMA-Richtlinien
default und
local keine expliziten
NUMA-Knotenmasken benötigen und der Wert dieser Option leer sein kann.
Ähnlich zu
NUMAPolicy= kann dieser Wert durch individuelle
Dienste in Unit-Dateien außer Kraft gesetzt werden, siehe
systemd.exec(5).
RuntimeWatchdogSec=, RebootWatchdogSec=,
KExecWatchdogSec=
Konfiguriert den Hardware-Watchdog zur Laufzeit und beim
Systemstart. Akzeptiert einen Wert in Sekunden (oder in anderen Zeiteinheiten,
falls »ms«, »min«, »h«,
»d«, »w« angehängt wird) für die
Zeitüberschreitung. Falls
RuntimeWatchdogSec= auf einen von Null
verschiedenen Wert gesetzt wird, wird die Watchdog-Hardware (/dev/watchdog
oder der mit
WatchdogDevice= oder der Kerneloption
systemd.watchdog-device= konfigurierte Pfad) programmiert, um das
System automatisch neu zu starten, falls es nicht innerhalb des festgelegten
Zeitüberschreitungsintervalls kontaktiert wurde. Der Systemverwalter
wird sicherstellen, es mindestens einmal in der Hälfte des festgelegten
Zeitüberschreitungsintervalls zu kontaktieren. Diese
Funktionalität benötigt die Existenz eines
Hardware-Watchdog-Geräts, wie dies typisch in eingebetteten und
Serversystemen der Fall ist. Nicht alle Hardware-Watchdogs erlauben die
Konfiguration aller möglichen Neustartzeitüberschreitungswerte,
falls notwendig, wird die am nächsten liegende
Zeitüberschreitung ausgewählt.
RebootWatchdogSec= kann
zur Konfiguration des Hardware-Watchdogs, wenn das System aufgefordert wird,
neuzustarten, verwandt werden. Es funktioniert als Sicherheitsnetz, um
sicherzustellen, dass der Neustart stattfindet, selbst falls ein sauberer
Neustartversuch in eine Zeitüberschreitung läuft. Beachten Sie,
dass die Zeitüberschreitung
RebootWatchdogSec= nur für
die zweite Phase des Neustarts gilt, d.h. nachdem alle normalen Dienste
bereits beendet wurden und nachdem der System- und Diensteverwalterprozess
(PID 1) durch das Programm systemd-shutdown ersetzt wurde, siehe
bootup(7) des Systems für Details. Während der ersten
Phase der Herunterfahraktion läuft der System- und Diensteverwalter
weiter und daher wird
RuntimeWatchdogSec= noch berücksichtigt.
Um eine Zeitüberschreitung für diese erste Phase des
Systemherunterfahrens zu definieren, konfigurieren Sie
JobTimeoutSec=
und
JobTimeoutAction= im Abschnitt »[Unit]« der Unit
shutdown.target. Standardmäßig ist
RuntimeWatchdogSec= 0
(aus) und
RebootWatchdogSec= 10 Minuten. Zusätzlich kann
KExecWatchdogSec= verwandt werden, um Watchdogs zu aktiveren, wenn
Kexec statt eines Neustarts verwandt wird. Beachten Sie, dass der Kernel den
Watchdog bei Kexec (abhängig von der speziellen Hardware und/oder
Treiber) nicht zurücksetzt. In diesem Fall könnte der Watchdog
nicht deaktiviert werden, wodurch das System neugestartet werden
könnte, außer
RuntimeWatchdogSec= ist auch zur gleichen
Zeit aktiviert. Aus diesem Grund wird empfohlen,
KExecWatchdogSec= nur
zu aktivieren, wenn auch
RuntimeWatchdogSec= aktiviert ist. Diese
Einstellungen haben keinen Effekt, falls kein Hardware-Watchdog
verfügbar ist.
WatchdogDevice=
Konfiguriert das Hardware-Watchdog-Gerät, das die
Laufzeit- und Herunterfahr-Watchdog-Timer öffnen und benutzen wird.
Standardmäßig /dev/watchdog. Diese Einstellung hat keinen
Effekt, falls kein Hardware-Watchdog verfügbar ist.
CapabilityBoundingSet=
Steuert, welche Capabilities in der
Capability-Begrenzungsmenge für PID 1 und seine Kindprozesse
aufgenommen werden sollen. Siehe
capabilities(7) für Details.
Akzeptiert eine durch Leerraumzeichen getrennte Liste von Capability-Namen,
wie sie von
cap_from_name(3) eingelesen werden. Die aufgeführten
Capabilities werden in die Begrenzungsmenge aufgenommen, alle anderen werden
entfernt. Falls der Liste der Capabilities ein ~ vorangestellt wird, werden
alle außer den aufgeführten Capabilities aufgenommen, der Effekt
der Zuweisung ist invertiert. Beachten Sie, dass diese Option auch die
respektiven Capabilities in der effektiven, erlaubten und vererbbaren
Capability-Menge betrifft. Die Capability-Begrenzungsmenge kann auch
für Units auch individuell mittels der Anweisung
CapabilityBoundingSet= für diese Unit konfiguriert werden.
Beachten Sie aber, dass Capabilities, die für PID 1 ausgeschlossen
wurden, nicht für individuelle Units wiedererlangt werden
können, sie sind auf Dauer verloren.
NoNewPrivileges=
Akzeptiert ein logisches Argument. Falls wahr, stellt sie
sicher, dass PID 1 und alle seine Kinder niemals Privilegien durch
execve(2) erhalten können (d.h. mittels der Bits setuid oder
setgid oder Dateisystem-Capabilities). Standardmäßig falsch.
Allzweckdistributionen benötigen typischerweise Programme mit gesetzten
Setuid- oder Setgid-Bits und werden daher nicht korrekt funktionieren, wenn
diese Option aktiviert ist. Individuelle Units können diese Option
nicht deaktivieren. Siehe auch
Schalter »Keine neuen
Privilegien«[1].
SystemCallArchitectures=
Akzeptiert eine durch Leerzeichen getrennte Liste von
Architekturkennzeichnern. Wählt aus, von welchen Architekturen auf
diesem System Systemaufrufe aufgerufen werden dürfen. Dies kann als
effektive systemweite Art zur Deaktivierung von Aufrufen von nicht-nativen
Programmen verwandt werden, um beispielsweise die Ausführung von
32-Bit-x86-Programmen auf 64-Bit-x86-64-Systemen zu verbieten. Diese Option
agiert systemweit und arbeitet ähnlich der Einstellung
SystemCallArchitectures= von Unit-Dateien, siehe
systemd.exec(5)
für Details. Diese Einstellung ist standardmäßig die
leere Liste, d.h. dass in diesem Fall keine Filterung der Systemaufrufe
basierend auf der Architektur angewandt wird. Bekannte Architekturkennzeichner
sind »x86«, »x86-64«, »x32«,
»arm« und der besondere Kennzeichner »native«.
Letzterer wird implizit auf die native Architektur des Systems abgebildet
(oder genauer, der Architektur, für die der Systemverwalter kompiliert
wurde). Setzen Sie diese Einstellung auf »native«, um die
Ausführung nicht nativer Programme zu verbieten. Wenn ein Programm
einen Systemaufruf einer Architektur ausführt, die nicht in dieser
Einstellung aufgeführt ist, wird sie sofort mit dem Signal SIGSYS
beendet.
TimerSlackNSec=
Setzt den Timer-Spielraum in Nanosekunden für PID
1, der von allen ausgeführten Prozessen geerbt wird, außer er
wird individuell außer Kraft gesetzt, beispielsweise mit der
Einstellung
TimerSlackNSec= in Dienste-Units (für Details siehe
systemd.exec(5)). Der Timer-Spielraum steuert die Genauigkeit der durch
Systemd-Timer ausgelösten Aufwachaktionen. Siehe
prctl(2)
für weitere Informationen. Beachten Sie, dass im Gegensatz zu den
meisten anderen Zeitdauerdefinitionen dieser Parameter einen Ganzzahlwert in
Nanosekunden akzeptiert, falls keine Einheit angegeben ist. Es werden auch die
normalen Zeiteinheiten verstanden.
StatusUnitFormat=
Akzeptiert entweder
name oder
description
als Wert. Falls
name, wird der Systemverwalter Unit-Namen statt der
längeren und aussagefähigeren, mit
Description= gesetzten
Beschreibungen in Statusmeldungen verwenden, siehe
systemd.unit(5).
DefaultTimerAccuracySec=
Setzt die Standardgenauigkeit der Timer-Units. Dies
steuert die globale Voreinstellung für die Einstellung
AccuracySec= von Timer-Units, siehe
systemd.timer(5) für
Details.
AccuracySec=-Einstellungen in individuellen Units setzen die
globale Vorgabe für die bestimmte Unit außer Kraft.
Standardmäßig 1 Minute. Beachten Sie, dass die Genauigkeit der
Timer-Units auch von dem Timer-Spielraum beeinflusst wird, siehe
TimerSlackNSec= oben.
DefaultTimeoutStartSec=, DefaultTimeoutStopSec=,
DefaultTimeoutAbortSec=, DefaultRestartSec=
Konfiguriert die Standardzeitüberschreitung zum
Starten, Beenden und Abbrechen von Units sowie die Standardzeit, die zwischen
automatischen Neustarts von Units geschlafen wird, wie dies pro Unit in
TimeoutStartSec=,
TimeoutStopSec=,
TimeoutAbortSec= und
RestartSec= konfiguriert ist (für Dienste, siehe
systemd.service(5) für Details über die Einstellungen pro
Unit). Standardmäßig deaktiviert, wenn Dienst mit
Type=oneshot verwandt wird. Für Units, die keine Dienste sind,
setzt
DefaultTimeoutStartSec= den Standardwert von
TimeoutSec=.
DefaultTimeoutStartSec= und
DefaultTimeoutStopSec= sind
standardmäßig 90 s.
DefaultTimeoutAbortSec= ist
standardmäßig nicht gesetzt, so dass alle Units auf
TimeoutStopSec= zurückfallen.
DefaultRestartSec= ist
standardmäßig 100 ms.
DefaultStartLimitIntervalSec=,
DefaultStartLimitBurst=
Konfiguriert die Standard-Startratenbegrenzung von Units,
wie dies pro Dienst in
StartLimitIntervalSec= und
StartLimitBurst= konfiguriert ist. Siehe
systemd.service(5)
für Details über die Einstellungen pro Dienst.
DefaultStartLimitIntervalSec= ist standardmäßig 10 s.
DefaultStartLimitBurst= ist standardmäßig 5.
DefaultEnvironment=
Setzt die Verwaltungs-Umgebungsvariablen, die an alle
ausgeführten Prozesse weitergegeben werden. Erhält eine Liste
von durch Leerzeichen getrennten Variablenzuweisungen. Siehe
environ(7)
für Details über Umgebungsvariablen.
Beispiel:
DefaultEnvironment="VAR1=Wort1 Wort2" VAR2=Wort3 "VAR3=Wort 5 6"
Setzt drei Variablen "VAR1", "VAR2",
"VAR3".
DefaultCPUAccounting=, DefaultBlockIOAccounting=,
DefaultMemoryAccounting=, DefaultTasksAccounting=,
DefaultIOAccounting=, DefaultIPAccounting=
Konfiguriert die
Standard-Buchführungs-Einstellungen, wie sie für jede Unit durch
CPUAccounting=,
BlockIOAccounting=,
MemoryAccounting=,
TasksAccounting=,
IOAccounting= und
IPAccounting=
konfiguriert werden. Siehe
systemd.resource-control(5) für
Details über die Einstellungen pro Unit.
DefaultTasksAccounting=
ist standardmäßig »yes«,
DefaultMemoryAccounting= ist »yes«.
DefaultCPUAccounting= ist standardmäßig
»yes«, falls die Aktivierung der CPU-Buchführung nicht
die Aktivierung der CPU-Controller benötigt (Linux 4.15+ verwendet die
vereinigte Hierarchie für die Ressourcensteuerung), andernfalls ist die
Vorgabe »no«. Die anderen drei Einstellungen sind
standardmäßig »no.
DefaultTasksMax=
Konfiguriert die Vorgabewerte der
TasksMax=-Einstellungen für jede Unit. Siehe
systemd.resource-control(5) für Details. Diese Einstellung wird
auf alle Unit-Typen, die Ressourcensteuerungseinstellungen
unterstützen, mit der Ausnahme von Scheiben-Units, angewandt.
Standardmäßig 15% der minimalen
kernel.pid_max=,
kernel.threads-max= und der Wurzel-Cgroup
pids.max. Der Kernel
hat einen Vorgabewert für
kernel.pid_max= und einen
Zählalgorithmus, falls er mehr als 32 Kerne antrifft. Mit der
standardmäßigen
kernel.pid_max= ist die Vorgabe
für
DefaultTasksMax= 4915, aber sie kann auf anderen Systemen
größer und in Betriebssystem-Containern kleiner sein.
DefaultLimitCPU=, DefaultLimitFSIZE=,
DefaultLimitDATA=, DefaultLimitSTACK=,
DefaultLimitCORE=, DefaultLimitRSS=,
DefaultLimitNOFILE=, DefaultLimitAS=,
DefaultLimitNPROC=, DefaultLimitMEMLOCK=,
DefaultLimitLOCKS=, DefaultLimitSIGPENDING=,
DefaultLimitMSGQUEUE=, DefaultLimitNICE=,
DefaultLimitRTPRIO=, DefaultLimitRTTIME=
Diese Einstellungen steuern verschiedene
Vorgaberessourcenbeschränkungen für von Units ausgeführte
Prozesse. Siehe
setrlimit(2) für Details. Diese Einstellungen
können in individuellen Units mittels der entsprechenden
LimitXXX=-Direktiven außer Kraft gesetzt werden und sie
akzeptieren die gleiche Parametersyntax, siehe
systemd.exec(5)
für Details. Beachten Sie, dass diese Ressourcenbeschränkungen
nur die Vorgaben für die Units sind, sie werden nicht auf den
Diensteverwalterprozess (d.h. PID 1) selbst angewandt.
DefaultOOMPolicy=
Konfiguriert die Standardrichtlinie für die
Reaktion auf Prozesse, die durch den Speicherknappheits- (OOOM-)Killer von
Linux getötet werden. Dies kann zur Auswahl einer globalen Vorgabe
für die Unit-bezogene Einstellung
OOMPolicy= verwandt werden.
Siehe
systemd.service(5) für Details. Beachten Sie, dass diese
Vorgabe für Dienste, die
Delegate= eingeschaltet haben, nicht
verwandt wird.