USERDBCTL(1) userdbctl USERDBCTL(1)

userdbctl - Benutzer, Gruppen und Gruppenmitgliedschaften untersuchen

userdbctl [OPTIONEN…] {BEFEHL} [NAME…]

userdbctl kann zur Untersuchung von Benutzern und Gruppen (sowie Gruppenzugehörigkeiten) des Systems verwandt werden. Dieses Clienthilfswerkzeug fragt die Benutzer-/Gruppen-Informationen ab, die von verschiedenen Systemdiensten bereitgestellt werden, sowohl JSON-Benutzer-/Gruppendatensätze (wie durch JSON-Benutzerdatensätze[1] und JSON-Gruppendatensätze[2] definiert) als auch klassische UNIX NSS/Glibc-Benutzer- und -Gruppendatensätze. Dieses Werkzeug ist primär ein Client für das Benutzer-/Gruppen-Datensatznachschlage-API über Varlink[3].

Die folgenden Optionen werden verstanden:

--output=MODUS

Wählt den Ausgabemodus, akzeptiert entweder »classic«, »friendly«, »table« oder »json«. Falls »classic«, wird eine Ausgabe erzeugt, die im Format sehr ähnlich zu /etc/passwd oder /etc/group ist. Falls »friendly«, wird eine umfangreichere und benutzerfreundlichere, menschenlesbare Ausgabe erstellt; falls »table«, wird eine minimale, tabulare Ausgabe erstellt; falls »json«, wird eine JSON-formatierte Ausgabe erstellt. Standardmäßig »friendly«, falls auf der Befehlszeile ein Benutzer/eine Gruppe angegeben ist, ansonsten »table«.

--service=DIENST[:DIENST…], -s DIENST:DIENST…

Steuert, welcher Dienst für Benutzer/Gruppen abzufragen ist. Akzeptiert eine Liste von einem oder mehreren Dienstenamen, getrennt durch »:«. Nachfolgend finden Sie eine Liste gut bekannter Dienstenamen. Falls nicht angegeben, werden alle verfügbaren Dienste auf einmal abgefragt.

--with-nss=LOGISCH

Steuert, ob klassisches Glibc/NSS-Benutzer/Gruppen-Nachschlagen in der Ausgabe aufgenommen werden soll. Falls --with-nss=no verwandt wird, werden sämtliche Versuche, Benutzer/Gruppen mittels Glibc-NSS aufzulösen oder aufzuzählen, unterdrückt. Falls --with-nss=yes angegeben ist, werden solche Benutzer/Gruppen in der Ausgabe aufgenommen (dies ist die Vorgabe).

--synthesize=LOGISCH

Steuert, ob Datensätze für die Benutzer/Gruppen root und nobody künstlich erstellt werden sollen, falls sie nicht anderweitig definiert sind. Standardmäßig (oder »yes«) werden solche Datensätze implizit künstlich erzeugt, falls sie andernfalls ansonsten fehlen würden, da sie für das Betriebssystem von besonderer Bedeutung sind. Falls »no«, wird diese künstliche Erzeugung ausgeschaltet.

-N

Diese Option ist die Kurzform von --with-nss=no --synthesize=no. Verwenden Sie diese Option, um nur Datensätze anzuzeigen, die nativ als JSON-Benutzer- oder -Gruppendatensätze definiert sind, wobei alle NSS/Glibc-Kompatibilität und alle implizit künstlich erstellten Informationen ausgeschaltet sind.

--no-pager

Die Ausgabe nicht an ein Textanzeigeprogramm weiterleiten.

--no-legend

Gibt die Legende nicht aus, d.h. die Spaltenköpfe und die Fußzeile mit Hinweisen.

-h, --help

Zeigt einen kurzen Hilfetext an und beendet das Programm.

--version

Zeigt eine kurze Versionszeichenkette an und beendet das Programm.

Die folgenden Befehle werden verstanden:

user [BENUTZER…]

Listet alle bekannten Benutzerdatensätze auf oder zeigt Details zu einem oder mehreren angegebenen Benutzerdatensätzen. Verwenden Sie --output=, um den Ausgabemodus anzupassen.

group [GRUPPE…]

Listet alle bekannten Gruppendatensätze auf oder zeigt Details zu einem oder mehreren angegebenen Gruppendatensätzen. Verwenden Sie --output=, um den Ausgabemodus anzupassen.

users-in-group [GRUPPE…]

Listet Benutzer auf, die Mitglieder der angegebenen Gruppen sind. Falls keine Gruppen angegeben werden, werden alle Benutzer/Gruppenmitgliedschaften aufgelistet. Verwenden Sie --output=, um den Ausgabemodus anzupassen.

groups-of-user [BENUTZER…]

Listet Gruppen, in denen der angegebene Benutzer Mitglied ist. Falls kein Benutzer angegeben ist, werden alle definierten Benutzer/Gruppenmitgliedschaften aufgelistet (in diesem Fall sind groups-of-user und users-in-group äquivalent). Verwenden Sie --output=, um den Ausgabemodus anzupassen.

services

Listet alle Dienste auf, die derzeit Benutzer-/Gruppendefinitionen für das System bereitstellen. Die Liste der gut bekannten Dienste, die Benutzerinformationen bereitstellen, ist weiter unten angegeben.

ssh-authorized-keys

Diese Aktion ist keine öffentliche, Anwendern zugängliche Schnittstelle. Sie wird verwandt, damit SSH-Daemons autorisierte Schlüssel aus Benutzerdatensätzen entnehmen können, siehe unten.

Der Befehl userdbctl services wird alle derzeit laufenden Dienste auflisten, die dem System Benutzer- oder Gruppendefinitionen bereitstellen. Die folgenden gut bekannten Dienste werden als Teil dieser Liste dargestellt:

io.systemd.DynamicUser

Dieser Dienst wird vom Systemdiensteverwalter selbst bereitgestellt (d.h. PID 1) und stellt alle Benutzer (und ihre Gruppen) künstlich generiert durch die Einstellung DynamicUser= in Dienste-Unit-Dateien dem System zur Verfügung (siehe systemd.exec(5) für Details über diese Einstellung).

io.systemd.Home

Dieser Dienst wird durch systemd-homed.service(8) bereitgestellt und stellt alle Benutzer (und ihre Gruppen), die zu den durch diesen Dienst verwalteten Home-Verzeichnissen gehören, dem System zur Verfügung&.

io.systemd.Machine

Dieser Dienst wird durch systemd-machined.service(8) bereitgestellt und stellt unter Verwendung von Benutzer-Namensräumen künstliche Datensätze für die durch einen Container verwandten Benutzer/Gruppen bereit.

io.systemd.Multiplexer

Dieser Dienst wird durch systemd-userdbd.service(8) bereitgestellt und verteilt das Nachschlagen von Benutzern/Gruppen auf alle anderen laufenden Nachschlage-Dienste. Dies ist der primäre Einstiegspunkt für alle Benutzer-/Gruppendatensatz-Clients, da es die Client-seitige Implementierung deutlich reduziert, da alle Clients einen einzelnen Dienst zum Nachschlagen abfragen können, statt parallel alle laufenden Dienste abzufragen. userdbctl nutzt diesen Dienst auch bevorzugt, außer --with-nss= oder --service= wird verwandt, wodurch eine genauere Steuerung über die Dienste, mit denen kommuniziert wird, notwendig ist.

io.systemd.NameSeviceSwitch

Dieser Dienst wird (auch) durch systemd-userdbd.service(8) bereitgestellt und konvertiert klassische NSS/Glibc-Benutzer- und Gruppendatensätze in JSON-Benutzer-/Gruppendatensätze, wodurch vollständige Rückwärtskompatibilität bereitgestellt wird. Verwenden Sie --with-nss=no, um diese Kompatibilität zu deaktivieren, siehe oben. Beachten Sie, dass die Kompatibilität tatsächlich in beide Richtungen bereitgestellt wird: nss-systemd(8) wird automatisch klassische NSS/Glibc-Benutzer-/Gruppendatensätze aus allen dem System zur Verfügung gestellten JSON-Benutzer-/Gruppendatensätzen bereitstellen, daher ist die Verwendung beider APIs größtenteils äquivalent und stellt den Zugriff auf die gleichen Daten bereit, allerdings legen die NSS/Glibc-APIs notwendigerweise nur eine reduziertere Gruppe an Feldern offen.

Beachten Sie, dass userdbctl auch interne Unterstützung für NSS-basiertes Nachschlagen hat. Dies bedeutet, dass das Nachschlagen in den grundlegenden Benutzer-/Gruppendatenbanken weiterhin funktioniert, falls weder io.systemd.Multiplexer noch io.systemd.NameSeviceSwitch laufen.

Das Werkzeug userdbctl kann dem SSH-Daemon zur Authentifizierung eine Liste der freigegebenen SSH-Schlüssel, die möglicherweise in einem Benutzerdatensatz enthalten sind, bereitstellen. Dafür ist Folgendes in der sshd_config(5) notwendig:
...
AuthorizedKeysCommand /usr/bin/userdbctl ssh-authorized-keys %u
AuthorizedKeysCommandUser root
…

Bei Erfolg wird 0 zurückgegeben, anderenfalls ein Fehlercode ungleich Null.

$SYSTEMD_PAGER
Zu verwendendes Textanzeigeprogramm, wenn --no-pager nicht angegeben ist; setzt $PAGER außer Kraft. Falls weder $SYSTEMD_PAGER noch $PAGER gesetzt sind, wird eine Reihe wohlbekannter Textanzeigeprogrammimplementierungen der Reihe nach ausprobiert, einschließlich less(1) und more(1), bis eines gefunden wird. Falls keine Textanzeigeprogrammimplementierung gefunden wird, wird keines aufgerufen. Setzen der Umgebungsvariablen auf die leere Zeichenkette oder den Wert »cat« ist äquivalent zur Übergabe von --no-pager.

$SYSTEMD_LESS

Setzt die an less übergebenen Optionen (standardmäßig »FRSXMK«) außer Kraft.

Benutzer könnten insbesondere zwei Optionen ändern wollen:

K

Diese Option weist das Textanzeigeprogramm an, sich sofort beim Druck von Strg-C zu beenden. Um less die Handhabung von Strg-C selbst zum Umschalten auf die Eingabeaufforderung zu erlauben, setzen Sie diese Option zurück.

Falls der Wert von $SYSTEMD_LESS kein »K« enthält und less das aufgerufene Textanzeigeprogramm ist, wird Strg+C durch das Programm ignoriert und muss durch das Textanzeigeprogramm selbst gehandhabt werden.

X

Diese Option weist das Textanzeigeprogramm an, keine Termcap-Initialisierungs- und -Deinitalisierungszeichenketten an das Terminal zu senden. Dies ist standardmäßig gesetzt, damit die Darstellung von Befehlen selbst nach dem Beenden des Textanzeigeprogramms sichtbar bleibt. Allerdings stehen dadurch einige Funktionen des Textanzeigeprogramms nicht zur Verfügung; insbesondere ist das Scrollen in der Ausgabe mit der Maus nicht möglich.

Siehe less(1) für weitere Ausführungen.

$SYSTEMD_LESSCHARSET

Setzt den an less zu übergebenden Zeichensatz (standardmäßig »utf-8«, falls das aufrufende Terminal als UTF-8-kompatibel erkannt wurde) außer Kraft.

$SYSTEMD_COLORS

Dies muss ein logischer Wert sein. Er steuert, ob farbige Ausgabe erstellt werden soll. Dies kann angegeben werden, um die Entscheidung, die systemd basierend auf $TERM und der Art der angebundenen Konsole trifft, außer Kraft zu setzen.

$SYSTEMD_URLIFY

Dies muss ein logischer Wert sein. Er steuert, ob anklickbare Links für Terminal-Emulatoren, die dies unterstützen, erstellt werden sollen. Dies kann angegeben werden, um die Entscheidung, die systemd basierend auf $TERM und anderen Bedingungen trifft, außer Kraft zu setzen.

systemd(1), systemd-userdbd.service(8), systemd-homed.service(8), nss-systemd(8), getent(1)

1.
JSON-Benutzerdatensatz
2.
JSON-Gruppendatensatz
3.
Benutzer-/Gruppen-Datensatznachschlage-API über Varlink

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>.

systemd 246