USER@.SERVICE(5)

BEZEICHNUNG
user@.service, user-runtime-dir@.service - System-Units zur Verwaltung von Benutzerprozessen

ÜBERSICHT

user@UID.service

user-runtime-dir@UID.service

user-UID.slice

BESCHREIBUNG

Der systemd(1)-Systemverwalter (PID 1) startet die Benutzerverwalterinstanz als user@UID.service, wobei die numerische UID des Benutzers als die Kennzeichnung der Instanz verwandt wird. Jede systemd --user-Instanz verwaltet eine Hierarchie ihrer eigenen Units. Siehe systemd(1) für eine Diskussion der System-Units und systemd.special(1) für eine Liste der Units, die die Grundlage der Unit-Hierarchie der System- und Benutzer-Units bilden.

user@UID.service wird durch die System-Unit user-runtime-dir@UID.service begleitet, die das Laufzeitverzeichnis des Benutzers /run/user/UID erstellt und dieses dann entfernt, wenn diese Unit gestoppt wird.

Benutzerprozesse können durch die Instanz user@.service gestartet werden. In diesem Fall werden sie Teil dieser Unit in der System-Hierarchie sein. Sie können auch woanders gestartet werden, beispielsweise durch sshd(8) oder durch einen Display-Manager wie gdm. In diesem Fall bilden sie eine .scope-Unit (siehe systemd.scope(5)). Sowohl user@UID.service als auch die Bereichs-Units werden unter einen user-UID.slice gesammelt.

Individuelle user-UID.slice-Scheiben werden unter user.slice gesammelt, siehe systemd.special(8).

RESSOURCEN FÜR ANGEMELDETE BENUTZER STEUERN

Optionen, die die für angemeldete Benutzer verfügbaren Ressourcen steuern, können auf verschiedenen Ebenen konfiguriert werden. Wie im vorherigen Abschnitt beschrieben, enthält user.slice die Prozesse aller Benutzer, so dass jede Ressourcenbeschränkung auf dieser Scheibe für alle Benutzer gilt. Normalerweise würde dieses durch Ergänzungen konfiguriert, z.B. /etc/systemd/system/user.slice.d/resources.conf.

Die Prozesse eines einzelnen Benutzers werden unter user-UID.slice gesammelt. Ressourcenbeschränkungen für diesen Benutzer können durch Ergänzungen für diese Unit konfiguriert werden, z.B. /etc/systemd/system/user-1000.slice.d/resources.conf. Falls diese Begrenzungen stattdessen für alle Benutzer gelten sollen, können sie durch Ergänzungen für den abgeschnittenen Unit-Namen, user-.slice, konfiguriert werden. Beispielsweise wird die Konfiguration in /etc/systemd/system/user-.slice.d/resources.conf in allen user-UID.slice-Units eingebunden, siehe systemd.unit(5) für eine Diskussion des Ergänzungsmechanismus.

Wenn sich ein Benutzer anmeldet und für diese Sitzung eine .scope-Unit erstellt wird (siehe vorherigen Abschnitt), kann die Erstellung der Bereichs-Unit durch pam_systemd(8) gelenkt werden. Dieses PAM-Modul kommuniziert mit systemd-logind(8), um den Sitzungsbereich zu erstellen und Zugriff auf Hardwareressourcen bereitzustellen. Ressourcenbeschränkungen für den Bereich können durch die PAM-Modulkonfiguration konfiguriert werden, siehe pam_systemd(8). Es ist auch möglich, sie durch die normale Unit-Konfiguration zu konfigurieren, aber da der Name der Scheiben-Unit im Allgemeinen unvorhersehbar ist, ist dies weniger nützlich.

Im Allgemeinen können alle Ressourcen, die für Units gelten, für user@UID.service und die oben beschriebenen Scheiben-Units konfiguriert werden, siehe systemd.resource-control(5) für einen Überblick.

BEISPIELE

Beispiel 1. Hierarchie von Control-Gruppen mit zwei angemeldeten Benutzern

    $ systemd-cgls
    Control group /:
    -.slice
    ââuser.slice
    â ââuser-1000.slice
    â â ââuser@1000.service
    â â â ââpulseaudio.service
    â â â â ââ2386 /usr/bin/pulseaudio --daemonize=no
    â â â ââgnome-terminal-server.service
    â â â   ââinit.scope
    â â â     ââ 4127 /libexec/gnome-terminal-server
    â â â     ââ 4198 zsh
    â â ...
    â â ââsession-4.scope
    â â   ââ 1264 gdm-session-worker [pam/gdm-password]
    â â   ââ 2339 /usr/bin/gnome-shell
    â â   ...
    â â ââsession-19.scope
    â â   ââ6497 sshd: zbyszek [priv]
    â â   ââ6502 sshd: zbyszek@pts/6
    â â   ââ6509 -zsh
    â â   ââ6602 systemd-cgls --no-pager
    â ...
    â ââuser-1001.slice
    â   ââsession-20.scope
    â   â ââ6675 sshd: guest [priv]
    â   â ââ6708 sshd: guest@pts/6
    â   â ââ6717 -bash
    â   ââuser@1001.service
    â     ââinit.scope
    â     â ââ6680 /lib/systemd/systemd --user
    â     â ââ6688 (sd-pam)
    â     ââsleep.service
    â       ââ6706 /usr/bin/sleep 30
    …

Benutzer mit UID 1000 ist mittels gdm (session-4.scope) und ssh(1) (session-19.scope) angemeldet. Es läuft auch eine Benutzerinstanz für ihn (user@1000.service). Benutzer mit UID 1001 ist mittels ssh (session-20.scope) angemeldet und hat auch eine Benutzerinstanz am laufen (user@1001.service). Dies sind alle (Blatt-)System-Units und bilden Teil der Scheiben-Hierarchie, mit user-1000.slice und user-1001.slice unterhalb von user.slice. Benutzer-Units sind unterhalb von user@.service-Instanzen sichtbar (pulseaudio.service, gnome-terminal-server.service, init.scope, sleep.service).

Beispiel 2. Standard-Benutzer-Ressourcenbeschränkungen

    $ systemctl cat user-1000.slice
    # /lib/systemd/system/user-.slice.d/10-defaults.conf
    # …
    [Unit]
    Description=Benutzerscheibe von UID %j
    After=systemd-user-sessions.service
    [Slice]
    TasksMax=33%

Die user-UID.slice-Units haben standardmäßig keine Unit-Datei. Die Ressourcenbeschränkungen werden durch Ergänzungen gesetzt, die leicht ersetzt oder mit dem im ersten Absatz diskutierten Standardergänzungsmechanismus erweitert werden können.

SIEHE AUCH

systemd(1), systemd.service(5), systemd.slice(5), systemd.resource-control(5), systemd.exec(5), systemd.special(7), pam(8)

Ü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 <debian-l10n-german@lists.debian.org>.