CAPSULE@.SERVICE(5) capsule@.service CAPSULE@.SERVICE(5)

capsule@.service - System-Unit für den Kapsel-Diensteverwalter

ÜBERSICHT

capsule@NAME.service

Diensteverwalter für Kapseln laufen in System-Units capsule@NAME.service, wobei der Name der Kapsel die Instanz identifiziert. Kapseln stellen eine Möglichkeit dar, zusätzliche Instanzen des Diensteverwalters unter dynamischen Benutzerkennungen auszuführen, d.h. UIDs, die reserviert werden, wenn der Kapsel-Diensteverwalter gestartet wird und freigegeben werden, wenn er gestoppt wird.

In vielerlei Hinsicht ist capsule@.service ähnlich zum benutzerbezogenen Diensteverwalter user@.service, es gibt aber eine Reihe von wichtigen Unterscheidungen:

•Der Kapsel-Diensteverwalter benützt DynamicUser= (siehe systemd.exec(5)), um eine neue UID dynamisch beim Aufruf zu reservieren. Der Benutzername wird automatisch aus dem Kapselnamen abgeleitet, indem diesem »c_« vorangestellt wird. Die UID wird freigegeben, wenn der Dienst beendet wird. Der Benutzerdiensteverwalter andererseits arbeitet unter einer statisch reservierten Benutzerkennung, die bereits existieren muss, bevor der Benutzerdiensteverwalter aufgerufen wird.
•Benutzerdiensteverwalter registrieren sich mit pam(8), Kapsel-Diensteverwalter machen dies nicht.
•Benutzerdiensteverwalter lesen ihre Konfiguration typischerweise aus einem Verzeichnis $HOME unterhalb von /home/, Kapsel-Diensteverwalter aus einem Verzeichnis $HOME unterhalb von /var/lib/capsules/.
•Benutzerdiensteverwalter sind gemeinsam in der Unit user.slice enthalten, Kapsel-Diensteverwalter in capsule.slice. Siehe auch systemd.special(7).
•Benutzerdiensteverwalter starten anfänglich die Benutzer-Unit default.target. Kapsel-Diensteverwalter rufen stattdessen die Benutzer-Unit capsule@.target auf.

Der Kapsel-Diensteverwalter und der Bus-Vermittler der Kapsel können mittels des Schalters --capsule= für systemctl(1), systemd-run(1) und busctl(1) erreicht werden.

Neue Kapseln können mittels eines einfachen Befehls systemctl start capsule@NAME.service gestartet und mittels systemctl stop capsule@NAME.service gestoppt werden. Starten einer Kapsel erstellt implizit ein Home-Verzeichnis /var/lib/capsules/NAME/, falls es fehlt. Ein Laufzeitverzeichnis wird als /run/capsules/NAME/ erstellt. Um diese Ressourcen zu entfernen, verwenden Sie systemctl clean capsule@NAME.service, beispielsweise mit dem Schalter --what=all.

Die Unit capsule@.service ruft einen Diensteverwalterprozess systemd --user auf. Dies bedeutet, das nach Unit-Dateien auf die gleiche Art gesucht wird, wie nach regulären Benutzerdiensteverwaltern, beispielsweise in /var/lib/capsules/NAME/.config/systemd/user/.

Kapselnamen können frei durch den Benutzer ausgewählt werden, allerdings müssen sie als UNIX-Dateinamen geeignet sein (d.h. maximal 255 Zeichen lang und sie dürfen kein »/« enthalten) und, wenn ihnen »p-« vorangestellt wird, müssen sie als Benutzernamen, der streng den POSIX-Regeln folgt, geeignet sein, siehe Benutzer-/Gruppennamen-Syntax[1] zu Details.

Hinzugefügt in Version 256.

Beispiel 1. Erstellen einer neuen Kapsel, aufrufen von zwei darin enthaltenen Programmen (eins interaktiv), es beenden und alles wieder aufräumen

# systemctl start capsule@tatze.service
# systemd-run --capsule=tatze --unit=sleeptest.service sleep 999
# systemctl --capsule=tatze status sleeptest.service
# systemd-run -t --capsule=tatze bash
# systemctl --capsule=tatze stop sleeptest.service
# systemctl stop capsule@tatze.service
# systemctl clean --all capsule@tatze.service

systemd(1), user@.service(5), systemd.service(5), systemd.slice(5), systemd.exec(5), systemd.special(7), systemctl(1), systemd-run(1), busctl(1), pam(8)

1.
Benutzer-/Gruppennamen-Syntax

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> 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.

systemd 256.5