SYSUSERS.D(5) sysusers.d SYSUSERS.D(5) BEZEICHNUNG sysusers.d - Deklarative Zuweisung von Systembenutzern und -gruppen UBERSICHT /etc/sysusers.d/*.conf /run/sysusers.d/*.conf /usr/lib/sysusers.d/*.conf #Typ Name Kennung GECOS Home-Verzeichnis Shell u Benutzername UID "Benutzerbeschreibung" /home/Verz /Pfad/zur/Shell u Benutzername UID:GID "Benutzerbeschreibung" /home/Verz /Pfad/zur/Shell u Benutzername /vom/Benutzer/besessene/Datei "Benutzerbeschreibung" /home/Verz /Pfad/zur/Shell g Gruppenname GID g Gruppenname /von/Gruppe/besessene/Datei m Benutzername Gruppenname r - niedrigste-hochste BESCHREIBUNG systemd-sysusers verwendet die Dateien aus dem Verzeichnis sysusers.d, um bei der Paketinstallation oder beim Systemstart Systembenutzer und -gruppen zu erzeugen und Benutzer zu Gruppen hinzuzufugen. Dieses Werkzeug kann nur dazu verwandt werden, Systembenutzer und -gruppen zuzuweisen. Es ist nicht fur die Erstellung sonstiger (d.h. regularer, >>Menschen-<<) Benutzer und Gruppen nutzlich, da es direkt auf /etc/passwd und /etc/group zugreift und komplexere Benutzerdatenbanken wie beispielsweise Datenbanken mit Bezug zu NIS oder LDAP umgeht. KONFIGURATIONSVERZEICHNISSE UND RANGFOLGE Jede Konfigurationsdatei muss in der Art Paket.conf oder Paket-Teil.conf benannt werden. Die zweite Variante sollte genutzt werden, wenn es wunschenswert ist, es leicht zu machen, nur diesen Teil der Konfiguration ausser Kraft zu setzen. Dateien in /etc/sysusers.d setzen Dateien mit dem gleiche Namen in usr/lib/sysusers.d und /run/sysusers.d ausser Kraft. Dateien in /run/sysusers.d setzen Dateien mit dem gleichen Namen in /usr/lib/sysusers.d ausser Kraft. Pakete sollten ihre Konfigurationsdateien in /usr/lib/sysusers.d installieren. Dateien in /etc/sysusers.d sind fur den lokalen Administrator reserviert, der diese Logik dazu verwenden kann, um die von den Lieferantenpaketen installierten Konfigurationsdateien ausser Kraft zu setzen. Alle Konfigurationsdateien werden in lexikographischer Reihenfolge nach ihrem Dateinamen sortiert, unabhangig davon, in welchem Verzeichnis sie sich befinden. Falls mehrere Dateien den gleichen Pfad festlegen, wird der Eintrag mit dem lexikographisch kleinsten Namen angewandt. Alle spateren Eintrage fur die gleichen Benutzer- und Gruppennamen werden als Warnung protokolliert. Falls der Administrator eine vom Lieferanten bereitgestellte Konfigurationsdatei deaktivieren mochte, wird empfohlen, einen Symlink auf /dev/null in /etc/sysusers.d/ mit dem gleichen Dateinamen zu legen. KONFIGURATIONSDATEIFORMAT Das Dateiformat ist eine Zeile pro Benutzer oder Gruppe, die den Namen, die Kennung, GECOS, Feldbeschreibung, Home-Verzeichnis und die Anmelde-Shell enthalt: #Typ Name Kennung GECOS Home-Verzeichnis Shell u httpd 404 "HTTP-Benutzer" u _authd /usr/bin/authd "Autorisierungs-Benutzer" u postgres - "Postgresql-Datenbank" /var/lib/pgsql /usr/libexec/postgresdb g input - - m _authd input u root 0 "Superuser" /root /bin/zsh r - 500-900 Leere Zeilen und Zeilen, die mit dem Zeichen >>#<< beginnen, werden ignoriert und konnen zur Kommentierung verwandt werden. Typ Der Typ besteht aus einem einzelnen Buchstaben. Die folgenden Zeilentypen werden verstanden: u Erstellt einen Systembenutzer und -gruppe des angegebenen Namens, falls sie noch nicht existieren. Die primare Gruppe des Benutzers wird auf die Gruppe, die den gleichen Namen tragt, gesetzt, ausser das Feld >>Kennung<< legt diese fest. Das Konto wird bei der Erstellung zunachst deaktiviert, so dass Anmeldungen nicht erlaubt sind. Hinzugefugt in Version 215. g Erstellt eine Systemgruppe des angegebenen Namens, falls sie noch nicht existiert. Beachten Sie, dass u implizit eine passende Gruppe erstellt. Die Gruppe wird ohne gesetztes Passwort erstellt. Hinzugefugt in Version 215. m Fugt einen Benutzer zu einer Gruppe hinzu. Falls der Benutzer oder die Gruppe noch nicht existiert, werden sie implizit erstellt. Hinzugefugt in Version 215. r Fugt einen Bereich von numerischen UIDs/GIDs zu dem Vorrat, aus dem neue UIDs und GIDs zugewiesen werden, hinzu. Falls keine Zeile dieses Typs festgelegt ist, wird der Bereich von UIDs/GIDs auf eine einkompilierte Vorgabe gesetzt. Beachten Sie, dass sowohl UIDs als auch GIDs aus dem gleichen Vorrat zugewiesen werden, um sicherzustellen, dass Benutzer und Gruppen des gleichen Namens wahrscheinlich die gleiche numerische UID und GID tragen. Hinzugefugt in Version 216. Name Das Namensfeld legt den Benutzer- oder Gruppennamen fest. Der festgelegte Name darf nur aus den Zeichen a-z, A-Z, 0-9, >>_<< und >>-<< bestehen, ausser beim ersten Zeichen, das eines aus a-z, A-Z und >>_<< sein muss (d.h. Zahlen und >>-<< sind als erstes Zeichen nicht erlaubt). Der Benutzer-/Gruppenname muss mindestens ein und maximal 31 Zeichen lang sein. Fur weitere Details uber die Syntax der Benutzer-/Gruppennamen, siehe Benutzer-/Gruppennamen-Syntax[1]. Es wird nachdrucklich empfohlen, Benutzer- und Gruppennamen auszuwahlen, die sich wahrscheinlich nicht mit von Administratoren erstellten normalen Benutzernamen uberschneiden. Ein gutes Schema ist, alle System- und Gruppennamen mit einem Unterstrich zu beginnen und zu allgemeine Namen zu vermeiden. Fur m-Zeilen sollte dieses Feld den Benutzernamen, der zu einer Gruppe hinzugefugt werden soll, enthalten. Fur Zeilen vom Typ r sollte dieses Feld auf >>-<< gesetzt werden. ID Fur u und g, die numerische 32-Bit-UID oder -GID des Benutzers/der Gruppe. Verwenden Sie die Kennungen 65535 und 4294967295 nicht, da sie besondere Platzhalterbedeutungen haben. Geben Sie >>-<< fur die automatische UID/GID-Zuweisung fur den Benutzer oder die Gruppe an (dies wird nachdrucklich empfohlen, ausser es ist absolut notwendig, eine bestimmte UID oder GID zu verwenden). Geben Sie alternativ einen absoluten Pfad in dem Dateisystem an. In diesem Fall wird die UID/GID von dem Eigentumer/der Gruppe des Pfades ausgelesen. Dies ist nutzlich, um Benutzer zu erzeugen, deren UID/GID auf den Eigentumer von bereits existierenden Dateien (wie SUID- oder SGID-Programmen) passen. Die Syntaxen >>UID:GID<< und >>UID:Gruppenname<< werden auch unterstutzt, um die Erstellung von Benutzern mit bestimmten primaren Gruppen zu ermoglichen. Die ubergebene Gruppe muss explizit erstellt worden sein oder sie muss bereits existieren. Die Angabe von >>-<< fur die UID in diesen Syntaxen wird auch unterstutzt. Fur m-Zeilen sollte dieses Feld den einem Benutzer hinzuzufugenden Gruppennamen enthalten. Fur Zeilen vom Typ r sollte dieses Feld auf einen UID/GID-Bereich im Format >>VON-BIS<< gesetzt werden, wobei beide Werte als dezimale ASCII-Zahlen formatiert sind. Alternativ kann eine einzelne, als dezimale ASCII-Zahl formatierte UID/GID festgelegt werden. GECOS Eine kurze, beschreibende Zeichenkette fur die zu erstellenden Benutzer, eingeschlossen in Anfuhrungszeichen. Beachten Sie, dass dieses Feld keine Doppelpunkte enthalten darf. Gilt nur fur Zeilen vom Typ u und sollte ansonsten nicht gesetzt werden (oder >>-<<). Home-Verzeichnis Das Home-Verzeichnis fur einen neuen Systembenutzer. Falls nicht angegeben, ist das Wurzelverzeichnis die Vorgabe. Gilt nur fur Zeilen vom Typ u und sollte ansonsten nicht gesetzt werden (oder >>-<<). Es wird empfohlen, dies wegzulassen, ausser Software verlangt zwingend, dass ein Home-Verzeichnis gesetzt wird. systemd-sysusers setzt nur den Home-Verzeichnisdatensatz in der Benutzerdatenbank. Um das Verzeichnis wirklich zu erstellen, sollten Sie ein entsprechendes tmpfiles.d(5)-Fragement hinzufugen. Shell Die Anmelde-Shell des Benutzers. Falls nicht festgelegt, wird dies auf /usr/sbin/nologin gesetzt, ausser die UID des Benutzers ist 0, in diesem Fall wird /bin/sh verwandt. Gilt nur fur Zeilen vom Typ u und sollte ansonsten nicht gesetzt werden (oder >>-<<). Es wird empfohlen, dies wegzulassen, ausser eine von /usr/sbin/nologin verschiedene Shell muss verwandt werden. KENNZEICHNER Kennzeichner konnen in den Feldern >>Name<<, >>ID<<, >>GECOS<<, >>Home directory<< und >>Shell<< verwandt werden. Ein unbekannter oder nicht auflosbarer Kennzeichner wird als ungultige Konfiguration behandelt. Die folgenden Erweiterungen werden verstanden: Tabelle 1. Verfugbare Kennzeichner +-------------+--------------------------------+-------------------------------------------+ |Kennzeichner | Bedeutung | Details | +-------------+--------------------------------+-------------------------------------------+ |"%a" | Architektur | Eine kurze Zeichenkette, die die | | | | Architektur des lokalen Systems | | | | identifiziert. Eine Zeichenkette wie x86, | | | | x86-64 oder arm64. Siehe die fur | | | | ConditionArchitecture= in systemd.unit(5) | | | | definierten Architekturen fur die | | | | vollstandige Liste. | +-------------+--------------------------------+-------------------------------------------+ |"%A" | Betriebssystemabbildversion | Die | | | | Betriebssystemabbildversionskennzeichnung | | | | des laufenden Systems, wie aus dem Feld | | | | IMAGE_VERSION= in /etc/os-release | | | | ausgelesen. Falls nicht gesetzt, wird es | | | | die leere Zeichenkette. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%b" | Boot-Kennung | Die Boot-Kennung des laufenden Systems, | | | | formatiert als Zeichenkette. Siehe | | | | random(4) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%B" | Betriebssystembaukennung | Die Betriebssystembaukennung des | | | | laufenden Systems, wie aus dem Feld | | | | BUILD_ID= in /etc/os-release ausgelesen. | | | | Falls nicht gesetzt, wird es zur leeren | | | | Zeichenkette aufgelost. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%H" | Rechnername | Der Rechnername des laufenden Systems. | +-------------+--------------------------------+-------------------------------------------+ |"%l" | Kurzer Rechnername | Die Rechnername des laufenden Systems, | | | | abgeschnitten am ersten Punkt, um alle | | | | Domain-Komponenten zu entfernen. | +-------------+--------------------------------+-------------------------------------------+ |"%m" | Maschinenkennung | Die Maschinenkennung des laufenden | | | | Systems, formatiert als Zeichenkette. | | | | Siehe machine-id(5) fur weitere | | | | Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%M" | Betriebssystemabbildkennung | Die Betriebssystemabbildkennung des | | | | laufenden Systems, wie aus dem Feld | | | | IMAGE_ID= in /etc/os-release ausgelesen. | | | | Falls nicht gesetzt, wird es die leere | | | | Zeichenkette. Siehe os-release(5) fur | | | | weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%o" | Betriebssystemkennung | Die Betriebssystemkennung des laufenden | | | | Systems, wie aus dem Feld ID= in | | | | /etc/os-release ausgelesen. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%T" | Verzeichnis fur temporare | Dies ist entweder /tmp oder der Pfad, auf | | | Dateien | den >>$TMPDIR<<, >>$TEMP<< oder >>$TMP<< | | | | gesetzt ist. (Beachten Sie, dass das | | | | Verzeichnis ohne abschliessenden | | | | Schragstrich angegeben werden kann.) | +-------------+--------------------------------+-------------------------------------------+ |"%v" | Kernelveroffentlichung | Identisch zur Ausgabe von uname -r. | +-------------+--------------------------------+-------------------------------------------+ |"%V" | Verzeichnis fur grossere und | Dies ist entweder /var/tmp oder der Pfad, | | | dauerhafte temporare Dateien | auf den >>$TMPDIR<<, >>$TEMP<< oder | | | | >>$TMP<< gesetzt ist. (Beachten Sie, dass | | | | das Verzeichnis ohne abschliessenden | | | | Schragstrich angegeben werden kann.) | +-------------+--------------------------------+-------------------------------------------+ |"%w" | Betriebssystemversionskennung | Die Betriebssystemversionskennzeichnung | | | | des laufenden Systems, wie aus dem Feld | | | | VERSION_ID= in /etc/os-release | | | | ausgelesen. Falls nicht gesetzt, wird es | | | | die leere Zeichenkette. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%W" | Betriebssystemvariantenkennung | Die Betriebssystemvariantenkennung des | | | | laufenden Systems, wie aus dem Feld | | | | VARIANT_ID= in /etc/os-release | | | | ausgelesen. Falls nicht gesetzt, wird es | | | | die leere Zeichenkette. Siehe | | | | os-release(5) fur weitere Informationen. | +-------------+--------------------------------+-------------------------------------------+ |"%%" | Einzelnes Prozentzeichen | Verwenden Sie >>%%<< anstelle von >>%<<, | | | | um ein einzelnes Prozentzeichen | | | | anzugeben. | +-------------+--------------------------------+-------------------------------------------+ IDEMPOTENZ Beachten Sie, dass systemd-sysusers nichts machen wird, falls der festgelegte Benutzer oder die festgelegte Gruppe bereits existiert oder die Benutzer Mitglieder von festgelegten Gruppen sind; daher gibt es normalerweise keinen Grund, die Lieferantenkonfiguration sysusers.d ausser Kraft zu setzen, ausser zu verhindern, dass bestimmte Benutzer oder Gruppen erstellt werden. SIEHE AUCH systemd(1), systemd-sysusers(8) ANMERKUNGEN 1. Benutzer-/Gruppennamen-Syntax https://systemd.io/USER_NAMES 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 SYSUSERS.D(5)