Einstellungsdateien können einen Abschnitt
»[Exec]« enthalten, der verschiedene
Ausführungsparameter transportiert:
Boot=
Akzeptiert ein logisches Argument,
standardmäßig »off«. Falls aktiviert, wird
systemd-nspawn automatisch nach einem Init-Programm suchen und es
ausführen. In diesem Fall werden die mittels
Parameters=
festgelegten Parameter als zusätzliche Argumente an den Init-Prozess
übergeben. Diese Einstellung entspricht dem Schalter
--boot auf
der
systemd-nspawn-Befehlszeile. Diese Option darf nicht mit
ProcessTwo=yes kombiniert werden. Diese Option ist
standardmäßig in der Vorlagen-Unit systemd-nspawn@.service
festgelegt.
Hinzugefügt in Version 226.
Ephemeral=
Akzeptiert ein logisches Argument,
standardmäßig »off«. Falls aktiviert, wird der
Container mit einem temporären Schnappschuss seines Dateisystems
ausgeführt, das beim Beenden des Containers sofort entfernt wird. Dies
ist äquivalent zum Befehlszeilenschalter
--ephemeral. Siehe
systemd-nspawn(1) für Details über die genauen
unterstützten Optionen.
Hinzugefügt in Version 240.
ProcessTwo=
Akzeptiert ein logisches Argument,
standardmäßig »off«. Falls aktiviert, wird das
festgelegte Programm als PID 2 ausgeführt. Ein Mini-Init-Prozess wird
als PID 1 ausgeführt. Diese Einstellung entspricht dem Schalter
--as-pid2 auf der
systemd-nspawn-Befehlszeile. Diese Option darf
nicht mit
Boot=yes kombiniert werden.
Hinzugefügt in Version 229.
Parameters=
Akzeptiert eine Leerraum-getrennte Liste von Argumenten.
Einzelne (»'«) und doppelte (»"«) englische
Anführungszeichen können um Argumente mit Lerraum verwandt
werden. Dies ist entweder eine Befehlszeile, die mit dem Namen des
auszuführenden Programmes beginnt, oder, falls
Boot= aktiviert
ist, die Liste der an den Init-Prozess zu übergebenen Argumente. Diese
Einstellung entspricht den auf der
systemd-nspawn-Befehlszeile
übergebenen Befehlszeilenparametern.
Beachten Sie: Boot=no, Parameters=a b "c
c" ist identisch zu systemd-nspawn a b "c c" und
Boot=yes, Parameters=b 'c c' ist das gleiche wie
systemd-nspawn --boot b 'c c'.
Hinzugefügt in Version 226.
Environment=
Akzeptiert eine Umgebungsvariablenzuweisung, bestehend
aus Schlüssel und Wert, getrennt durch »=«. Setzt eine
Umgebungsvariable für den im Container aufgerufenen Hauptprozess. Diese
Einstellung kann mehrfach verwandt werden, um mehrere Umgebungsvariablen zu
setzen. Sie entspricht dem Befehlszeilenschalter
--setenv=.
Hinzugefügt in Version 226.
User=
Akzeptiert einen UNIX-Benutzernamen. Legt den
Benutzernamen fest, unter dem der Hauptprozess im Container aufgerufen werden
soll. Dieser Benutzer muss in der Benutzerdatenbank des Containers bekannt
sein. Dies entspricht dem Befehlszeilenschalter
--user=.
Hinzugefügt in Version 226.
WorkingDirectory=
Wählt das Arbeitsverzeichnis für den im
Container aufgerufenen Prozess. Erwartet einen absoluten Pfad im
Dateisystemnamensraum des Containers. Dies entspricht dem
Befehlszeilenschalter
--chdir=.
Hinzugefügt in Version 229.
PivotRoot=
Wählt ein Verzeichnis, in das zu / im Container
beim Starten hin umgeschwenkt werden soll. Akzeptiert einen einzelnen Pfad
oder ein Paar durch Doppelpunkt getrennte Pfade. Beide Pfade müssen
absolut und im Dateisystemnamensraum des Containers auflösbar sein.
Dies entspricht dem Befehlszeilenschalter
--pivot-root=.
Hinzugefügt in Version 233.
Capability=, DropCapability=
Akzeptiert eine Leerraum-getrennte Liste von
Linux-Prozess-Capabilities (siehe
capabilities(7) für Details).
Die Einstellung
Capability= legt zusätzliche Capabilities fest,
die ergänzend zur Vorgabemenge der Capabilities übergeben werden
soll. Die Einstellung
DropCapability= legt Capabilities fest, die aus
der Vorgabemenge entfernt werden sollen. Diese Einstellungen entsprechen den
Befehlszeilenschaltern
--capability= und
--drop-capability=.
Beachten Sie, dass
Capability= eine privilegierte Einstellung ist und
nur in .nspawn-Dateien in /etc/systemd/nspawn/ und /run/system/nspawn/ wirksam
wird (siehe oben). Andererseits wird
DropCapability= in allen
Fällen wirksam. Falls der besondere Wert »all«
übergeben wird, werden alle Capabilities erhalten (oder entfernt).
Diese Einstellungen sind die Begrenzungsmenge der Capabilitys, die
auch die in AmbientCapability= übergebenen Capabilitys
begrenzt.
Hinzugefügt in Version 226.
AmbientCapability=
Akzeptiert eine Leerzeichen-begrenzte Liste von
Linux-Prozess-Capabilitys (siehe
capabilities(7) für Details).
Die Einstellung
AmbientCapability= legt Capabilitys fest, die dem
gestarteten Programm in den vererbbaren und Umgebungs-Capability-Mengen
übergeben werden. Dies gewährt diese Capabilitys diesem Prozess.
Diese Einstellung entspricht dem Befehlzeilenschalter
--ambient-capability=.
Für diese Einstellung wird der Wert »all«
nicht unterstützt.
Die Einstellung von AmbientCapability= muss durch die
Begrenzungsmengeneinstellung, wie sie durch Capability= und
DropCapability= eingerichtet wurde, abgedeckt sein.
Beachten Sie, dass AmbientCapability= eine privilegierte
Einstellung ist (siehe oben).
Hinzugefügt in Version 248.
NoNewPrivileges=
Akzeptiert ein logisches Argument, das den Schalter
PR_SET_NO_NEW_PRIVS für den Container-Nutzinhalt steuert. Dies
ist äquivalent zum Befehlszeilenschalter
--no-new-privileges=.
Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 239.
KillSignal=
Legt das an PID 1 des Containers zu sendende Signal fest,
wenn Nspawn selbst ein SIGTERM empfängt, um ein geordnetes
Herunterfahren des Containers auszulösen. Standardmäßig
SIGRTMIN+3, falls
Boot= verwandt wird (auf Systemd-kompatiblen
Init-Systemen löst SIGRTMIN+3 ein geordnetes Herunterfahren aus). Siehe
signal(7) für eine Liste gültiger Signale.
Hinzugefügt in Version 230.
Personality=
Konfiguriert die Kernelpersonalität für den
Container. Dies ist äquivalent zum Befehlszeilenschalter
--personality=.
Hinzugefügt in Version 226.
MachineID=
Konfiguriert die an den Container zu übergebende
128-Bit-Maschinenkennung (UUID). Dies ist äquivalent zum
Befehlszeilenschalter
--uuid=. Diese Option ist privilegiert (siehe
oben).
Hinzugefügt in Version 226.
PrivateUsers=
Konfiguriert Unterstützung für
Benutzernamensräume. Dies ist äquivalent zum
Befehlszeilenschalter
--private-users= und akzeptiert die gleichen
Optionen. Diese Option ist privilegiert (siehe oben). Diese Option ist die
Vorgabe, falls die Vorlagen-Unitdatei systemd-nspawn@.service verwandt wird.
Hinzugefügt in Version 230.
NotifyReady=
Konfiguriert die Unterstützung für
Benachrichtigungen vom Init-Prozess des Containers. Dies ist äquivalent
zum Befehlszeilenschalter
--notify-ready= und akzeptiert den gleichen
Parameter. Siehe
systemd-nspawn(1) für Details über die
genauen unterstützten Optionen.
Hinzugefügt in Version 231.
SystemCallFilter=
Konfiguriert den auf Container angewandten
Systemaufruffilter. Dies ist äquivalent zum Befehlszeilenschalter
--system-call-filter= und akzeptiert den gleichen Listenparameter.
Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 235.
LimitCPU=, LimitFSIZE=, LimitDATA=,
LimitSTACK=, LimitCORE=, LimitRSS=,
LimitNOFILE=, LimitAS=, LimitNPROC=,
LimitMEMLOCK=, LimitLOCKS=, LimitSIGPENDING=,
LimitMSGQUEUE=, LimitNICE=, LimitRTPRIO=,
LimitRTTIME=
Konfiguriert verschiedene Arten von auf Container
anzuwendende Ressourcenbegrenzungen. Dies ist äquivalent zum
Befehlszeilenschalter
--rlimit= und akzeptiert die gleichen Argumente.
Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 239.
OOMScoreAdjust=
Konfiguriert den OOM-Anpassungsbewertungswert. Dies ist
äquivalent zum Befehlszeilenschalter
--oom-score-adjust= und
akzeptiert das gleiche Argument. Siehe
systemd-nspawn(1) für
Details.
Hinzugefügt in Version 239.
CPUAffinity=
Konfiguriert die CPU-Affinität. Dies ist
äquivalent zum Befehlszeilenschalter
--cpu-affinity= und
akzeptiert das gleiche Argument. Siehe
systemd-nspawn(1) für
Details.
Hinzugefügt in Version 239.
Hostname=
Konfiguriert den für den Container zu setzenden
Kernel-Rechnernamen. Dies ist äquivalent zum Befehlszeilenschalter
--hostname= und akzeptiert das gleiche Argument. Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 239.
ResolvConf=
Konfiguriert, wie /etc/resolv.conf im Container
gehandhabt werden soll. Dies ist äquivalent zum Befehlszeilenschalter
--resolv-conf= und akzeptiert das gleiche Argument. Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 239.
Timezone=
Konfiguriert, wie /etc/localtime im Container gehandhabt
werden soll. Dies ist äquivalent zum Befehlszeilenschalter
--timezone= und akzeptiert das gleiche Argument. Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 239.
LinkJournal=
Konfiguriert, wie die Journal-Einrichtung des Rechners
und des Containers verbunden werden. Dies ist äquivalent zum
Befehlszeilenschalter
--cpu-affinity= und akzeptiert den gleichen
Parameter. Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 239.
SuppressSync=
Konfiguriert, ob Plattensynchronisation für den
Container-Inhalt unterdrückt werden soll. Dies ist äquivalent
zum Befehlszeilenschalter
--suppress-sync= und akzeptiert den gleichen
Parameter. Siehe
systemd-nspawn(1) für Details.
Hinzugefügt in Version 250.
Einstellungsdateien können einen Abschnitt
»[Files]« enthalten, der verschiedene Parameter zur
Konfiguration des Dateisystems des Containers transportiert:
ReadOnly=
Akzeptiert ein logisches Argument, das
standardmäßig »off« ist. Falls festgelegt, wird
der Container mit einem nur-lesbaren Dateisystem ausgeführt. Diese
Einstellung entspricht dem Befehlszeilenschalter
--read-only.
Hinzugefügt in Version 226.
Volatile=
Akzeptiert ein logisches Argument oder den besonderen
Wert »state«. Dies konfiguriert, ob der Container in einem
flüchtigen Zustand und/oder Konfiguration ausgeführt werden
soll. Diese Option ist äquivalent zu
--volatile=, siehe
systemd-nspawn(1) für Details über die genauen
unterstützten Optionen.
Hinzugefügt in Version 226.
Bind=, BindReadOnly=
Fügt eine Bind-Einhängung vom Rechner in
den Container hinzu. Akzeptiert einen Pfad, ein Paar aus Pfad und
Optionszeichenkette, getrennt durch einen Doppelpunkt oder ein Triplett von
zwei Pfaden sowie eine Optionszeichenkette, getrennt durch einen Doppelpunkt.
Diese Option kann mehrfach verwandt werden, um mehrere
Bind-Einhängungen zu konfigurieren. Diese Option ist äquivalent
zu den Befehlszeilenschaltern
--bind= und
--bind-ro=, siehe
systemd-nspawn(1) für Details über die genauen
unterstützten Optionen. Diese Option ist privilegiert (siehe oben).
Hinzugefügt in Version 226.
BindUser=
Bindet einen Benutzer vom Rechner in den Container. Diese
Option ist äquivalent zu dem Befehlszeilenschalter
--bind-user=,
siehe
systemd-nspawn(1) für Details über die genauen
unterstützten Optionen. Diese Option ist privilegiert (siehe oben).
Hinzugefügt in Version 249.
TemporaryFileSystem=
Fügt eine »tmpfs«-Einhängung
zum Container hinzu. Akzeptiert einen Pfad oder ein Paar aus Pfad und
Optionszeichenkette, getrennt durch einen Doppelpunkt. Diese Option kann
mehrfach verwandt werden, um mehrere »tmpfs«-Einhängungen
zu konfigurieren. Diese Option ist äquivalent zum Befehlszeilenschalter
--tmpfs=, siehe
systemd-nspawn(1) für Details über
die genauen unterstützten Optionen. Diese Option ist privilegiert
(siehe oben).
Hinzugefügt in Version 226.
Inaccessible=
Maskiert die festgelegte Datei oder Verzeichnis im
Container, indem ein leerer Dateiknoten vom gleichen Typ mit dem
eingeschränktesten Modus darüber eingehängt wird.
Akzeptiert einen Dateisystempfad als Argument. Diese Option kann mehrfach
verwandt werden, um mehrere Dateien oder Verzeichnisse zu maskieren. Diese
Option ist äquivalent zum Befehlszeilenschalter
--inaccessible=,
siehe
systemd-nspawn(1) für Details über die genauen
unterstützten Optionen. Diese Option ist privilegiert (siehe oben).
Hinzugefügt in Version 242.
Overlay=, OverlayReadOnly=
Fügt einen
Überlagerungseinhängepunkt hinzu. Akzeptiert eine durch
Doppelpunkte getrennte Liste von Pfaden. Diese Option kann mehrfach verwandt
werden, um mehrere Überlagerungseinhängungen zu konfigurieren.
Diese Option ist äquivalent zu den Befehlszeilenschaltern
--overlay-ro= und
--overlay-ro=, siehe
systemd-nspawn(1)
für Details über die genauen unterstützten Optionen.
Diese Option ist privilegiert (siehe oben).
Hinzugefügt in Version 233.
PrivateUsersOwnership=
Konfiguriert, ob die Eigentümerschaft von Dateien
und Verzeichnissen im Container-Baum mit dem verwandten UID/GID-Bereich falls
notwendig angepasst werden soll und ob Benutzernamensräume aktiviert
sind. Diese Option ist äquivalent zum Befehlszeilenschalter
--private-users-ownership=. Diese Option ist privilegiert (siehe oben).
Hinzugefügt in Version 249.
Einstellungsdateien können einen Abschnitt
»[Network]« enthalten, der verschiedene Parameter zur
Konfiguration der Netzwerkverbindungen des Containers transportiert:
Private=
Akzeptiert ein logisches Argument,
standardmäßig »off«. Falls aktiviert, läuft
der Container in seinem eigenen Netzwerknamensraum und nutzt
Netzwerkschnittstellen und Konfiguration mit dem Rechner nicht gemeinsam.
Diese Option entspricht dem Befehlszeilenschalter
--private-network.
Hinzugefügt in Version 226.
VirtualEthernet=
Akzeptiert ein logisches Argument. Konfiguriert, ob eine
virtuelle Ethernet-Verbindung (»veth«) zwischen dem Rechner und
dem Container konfiguriert werden soll. Diese Einstellung impliziert
Private=yes. Diese Option entspricht dem Befehlszeilenschalter
--network-veth. Diese Option ist privilegiert (siehe oben). Diese
Option ist die Vorgabe, falls die Vorlagen-Unit-Datei systemd-nspawn@.service
verwandt wird.
Hinzugefügt in Version 226.
VirtualEthernetExtra=
Akzeptiert ein Doppelpunkt-getrenntes Paar von
Schnittstellennamen. Konfiguriert eine zusätzliche virtuelle
Ethernet-Verbindung (»veth«) zwischen dem Rechner und dem
Container. Der erste angegebene Name ist der Schnittstellenname auf dem
Rechner, der zweite der Schnittstellenname im Container. Letzterer kann
entfallen, dann wird er auf den gleichen Namen wie der Schnittstellenname des
Rechners gesetzt. Diese Einstellung impliziert
Private=yes. Diese
Option entspricht dem Befehlszeilenschalter
--network-veth-extra= und
darf mehrfach verwandt werden. Sie ist von
VirtualEthernet=
unabhängig. Beachten Sie, dass diese Option unabhängig von der
nachfolgend beschriebenen Einstellung
Bridge= ist und daher alle auf
diese Art erstellten Verbindungen nicht automatisch zu jedem
Bridge-Gerät auf der Rechner-Seite hinzugefügt werden. Diese
Option ist privilegiert (siehe oben).
Hinzugefügt in Version 228.
Interface=
Akzeptiert eine Leerraum-getrennte Liste von
Schnittstellen, die dem Container hinzugefügt werden sollen. Das
Schnittstellenobjekt ist entweder über einen einzelnen
Schnittstellennamen definiert, der den Namen auf dem Rechner referenziert,
ober über ein Doppelpunkt-getrenntes Paar von Schnittstellen, wobei der
erste den Namen auf dem Rechner referenziert und der zweite den Namen im
Container. Diese Optionen entspricht dem Befehlszeilenschaltern
--network-interface= und impliziert
Private=yes. Diese Option
ist privilegiert (siehe oben).
Hinzugefügt in Version 226.
MACVLAN=, IPVLAN=
Akzeptiert eine Leerraum-getrennte Liste von
Schnittstellen, denen MACLVAN- oder IPVLAN-Schnittstellen hinzugefügt
und die dann dem Container hinzugefügt werden sollen. Das
Schnittstellenobjekt ist entweder über einen einzelnen
Schnittstellennamen definiert, der den Namen auf dem Rechner referenziert,
ober über ein Doppelpunkt-getrenntes Paar von Schnittstellen, wobei der
erste den Namen auf dem Rechner referenziert und der zweite den Namen im
Container. Diese Optionen entsprechen den Befehlszeilenschaltern
--network-macvlan= und
--network-ipvlan= und implizieren
Private=yes. Diese Optionen sind privilegiert (siehe oben).
Hinzugefügt in Version 226.
Bridge=
Akzeptiert einen Schnittstellennamen. Diese Einstellung
impliziert
VirtualEthernet=yes und
Private=yes. Sie hat den
Effekt, dass die Rechnerseite der erstellten virtuellen Netzwerkverbindung mit
der festgelegten Bridge-Schnittstelle verbunden ist. Diese Option entspricht
dem Befehlszeilenschalter
--network-bridge=. Diese Option ist
privilegiert (siehe oben).
Hinzugefügt in Version 226.
Zone=
Akzeptiert einen Netzwerkzonennamen. Diese Einstellung
impliziert
VirtualEthernet=yes und
Private=yes. Sie hat den
Effekt, dass die Rechnerseite der erstellten virtuellen Netzwerkverbindung mit
einer automatisch verwalteten Bridge-Schnittstelle verbunden ist, die nach dem
übergebenen Argument benannt ist, dem »vz-« vorangestellt
wurde. Diese Option entspricht dem Befehlszeilenschalter
--network-zone=. Diese Option ist privilegiert (siehe oben).
Hinzugefügt in Version 230.
Port=
Legt einen TCP- oder UDP-Port des Containers auf dem
Rechner offen. Diese Option entspricht dem Befehlszeilenschalter
--port=, siehe
systemd-nspawn(1) für die genaue Syntax
der Argumente, den diese Option erwartet. Diese Option ist privilegiert (siehe
oben).
Hinzugefügt in Version 226.