OPTIONEN¶
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«.
Beachten Sie, dass die meisten Ausgabeformate nicht
sämtliche verfügbare Informationen anzeigen. Insbesondere
zeigen »classic« und »table« nur die wichtigsten
Felder. Verschiedene Modi zeigen auch nicht die Passwort-Hashes. Verwenden
Sie »json«, um alle Felder, einschließlich der
Authentifizierungsfelder, anzuzeigen.
Hinzugefügt in Version 245.
--json=FORMAT
Wählt den JSON-Ausgabemodus (wie
--output=json) und wählte den genauen Anzeigemodus. Akzeptiert
entweder »pretty« oder »short«. Falls
»pretty«, werden lesefreundliche Leerraumzeichen und
Zeilenumbrüche in der Ausgabe eingefügt, um die JSON-Daten
lesbarer zu machen. Bei »short« werden alle
überflüssigen Leerraumzeichen unterdrückt.
Hinzugefügt in Version 250.
--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.
Hinzugefügt in Version 245.
--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).
Hinzugefügt in Version 245.
--with-varlink=LOGISCH
Steuert, ob Varlink Benutzer/Gruppen-Nachschlagen in der
Ausgabe aufgenommen werden soll, d.h. das mittels
Benutzer-/Gruppen-Datensatznachschlage-API über Varlink[3]
erfolgt . Falls
--with-varlink=no verwandt wird, werden
sämtliche Versuche, Benutzer/Gruppen mittels Varlink aufzulösen
oder aufzuzählen, unterdrückt. Falls
--with-varlink=yes
angegeben ist, werden solche Benutzer/Gruppen in der Ausgabe aufgenommen (dies
ist die Vorgabe).
Hinzugefügt in Version 249.
--with-dropin=LOGISCH
Steuert, ob Benutzer/Gruppen-Nachschlagen in der Ausgabe
aufgenommen werden soll, das in Ergänzungsdateien in /etc/userdb/,
/run/userdb/, /run/host/userdb/, /usr/lib/userdb/ definiert ist. . Falls
--with-dropin=no verwandt wird, werden diese Datensätze
unterdrückt. Falls
--with-dropin=yes angegeben ist, werden
solche Benutzer/Gruppen in der Ausgabe aufgenommen (dies ist die Vorgabe).
Hinzugefügt in Version 249.
--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.
Hinzugefügt in Version 245.
-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.
Hinzugefügt in Version 245.
--multiplexer=LOGISCH
Steuert, ob Nachschlagen über den
Multiplexer-Dienst (falls als wahr angegeben, was die Vorgabe ist) oder ob
Nachschlagen im Client erfolgen soll (falls als falsch angegeben).
Normalerweise sollte der Multiplexer-Dienst bevorzugt werden, da er in einer
verriegelten Sandbox läuft.
Hinzugefügt in Version 250.
--chain
Erlaubt bei der Verwendung mit dem Befehl
ssh-authorized-keys die Übergabe einer zusätzlichen
Befehlszeile nach dem Benutzernamen, die dann als nächstes in der Kette
ausgeführt wird, nachdem das Nachschlagen abgeschlossen wurde. Dies
erlaubt die Verkettung mehrerer Werkzeuge, die die autorisierten
Schlüssel von SSH anzeigen.
Hinzugefügt in Version 250.
--no-pager
Leitet die Ausgabe nicht an ein Textanzeigeprogramm
weiter.
--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.
BEFEHLE¶
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.
Hinzugefügt in Version 245.
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.
Hinzugefügt in Version 245.
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.
Hinzugefügt in Version 245.
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.
Hinzugefügt in Version 245.
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.
Hinzugefügt in Version 245.
ssh-authorized-keys
Zeigt autorisierte SSH-Schlüssel für dieses
Konto. Dieser Befehl ist dazu gedacht, damit SSH-Daemons autorisierte
Schlüssel aus Benutzerdatensätzen entnehmen können, siehe
unten.
Hinzugefügt in Version 245.
GUT BEKANNTE DIENSTE¶
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).
Hinzugefügt in Version 245.
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&.
Hinzugefügt in Version 245.
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.
Hinzugefügt in Version 246.
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.
Hinzugefügt in Version 245.
io.systemd.NameServiceSwitch
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.
Hinzugefügt in Version 245.
io.systemd.DropIn
Dieser Dienst wird (auch) durch
systemd-machined.service(8) bereitgestellt und nimmt auch die
JSON-Benutzer-/Gruppendatensätze von Erweiterungsdateien in
/etc/userdb/, /run/userdb/, /run/host/userdb/ und /usr/lib/userdb/ auf.
Hinzugefügt in Version 249.
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.NameServiceSwitch
laufen.
UMGEBUNGSVARIABLEN¶
$SYSTEMD_LOG_LEVEL
Die maximale Protokollierstufe für ausgegebene
Meldungen (Meldungen mit einer höheren Protokollierstufe, d.h. weniger
wichtige, werden unterdrückt). Akzeptiert eine Kommata-getrennte Liste
von Werten. Ein Wert kann einer der folgenden sein (in Reihenfolge
absteigender Bedeutung):
emerg,
alert,
crit,
err,
warning,
notice,
info,
debug oder eine Ganzzahl im
Bereich 0…7. Siehe
syslog(3) für weitere Informationen.
Jedem Wert kann optional eine Zeichenkette aus
console,
syslog,
kmsg oder
journal gefolgt von einem Doppelpunkt vorangestellt
werden, um die maximale Protokollierstufe für dieses spezielle
Protokollierziel zu setzen (d.h.
SYSTEMD_LOG_LEVEL=debug,console:info
legt fest, dass auf der Stufe »debug« protokolliert werden soll,
außer beim Protokollieren auf die Konsole, die auf Stufe
»info« erfolgen soll). Beachten Sie, dass die globale maximale
Protokollierstufe Priorität gegenüber jeder zielbezogenen
maximalen Protokollierstufe hat.
$SYSTEMD_LOG_COLOR
Ein logischer Wert. Falls wahr, werden auf das TTY
geschriebene Nachrichten gemäß ihrer Priorität
eingefärbt.
Diese Einstellung ist nur nützlich, falls die Nachrichten
direkt auf das Terminal geschrieben werden, da journalctl(1) und
andere Werkzeuge, die Protokolle anzeigen, selbständig Nachrichten
gemäß ihrer Protokollierungsstufe einfärben.
$SYSTEMD_LOG_TIME
Ein logischer Wert. Falls wahr, wird den
Protokollnachrichten der Konsole ein Zeitstempel vorangestellt.
Diese Einstellung ist nur nützlich, falls die Nachrichten
direkt auf das Terminal oder in eine Datei geschrieben werden, da
journalctl(1) und andere Werkzeuge, die Protokolle anzeigen,
selbständig Zeitstempel basierend auf ihren Metadaten den Nachrichten
anhängen.
$SYSTEMD_LOG_LOCATION
Ein logischer Wert. Falls wahr, wird den
Protokollnachrichten ein Dateiname und eine Zeilenummer in dem Quellcode, aus
dem die Nachrichten stammen, vorangestellt.
Beachten Sie, dass der Protokollierort sowieso oft als Metadaten
zu den Journal-Einträgen angehängt ist. Die Aufnahme in den
Nachrichtentext kann bei der Fehlersuche in Programmen dennoch praktisch
sein.
$SYSTEMD_LOG_TID
Ein logischer Wert. Falls wahr, wird den Nachrichten die
aktuelle numerische Thread-Kennung (TID) vorangestellt.
Beachten Sie, dass diese Informationen sowieso als Metadaten an
Journal-Einträge angehängt wird. Die Aufnahme direkt im
Nachrichtentext kann aber trotzdem bei der Fehlersuche in Programmen
praktisch sein.
$SYSTEMD_LOG_TARGET
Das Ziel für Protokolliernachrichten. Entweder
console (auf das angehängte TTY protokollieren),
console-prefixed (auf das angehängte TTY protokollieren, aber
die Protokollierstufe und »Einrichtung« voranstellen, siehe
syslog(3)),
kmsg (in den zirkulären
Kernel-Protokollpuffer protokollieren),
journal (in das Journal
protokollieren),
journal-or-kmsg (in das Journal protokollieren, falls
verfügbar, und andernfalls nach Kmsg),
auto (das geeignete
Protokollierziel automatisch ermitteln, die Vorgabe) oder
null (die
Protokollierung deaktivieren).
$SYSTEMD_LOG_RATELIMIT_KMSG
Ob Kmsg ratenlimitiert werden soll oder nicht. Akzeptiert
einen logischen Wert. Standardmäßig »true«. Falls
deaktiviert, wird Systemd die nach Kmsg geschriebenen Meldungen nicht
ratenlimitieren.
$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 Implementierungen von Textanzeigeprogrammen der Reihe nach
ausprobiert, einschließlich
less(1) und
more(1), bis
eines gefunden wird. Falls keine Implementierung eines Textanzeigeprogramms
gefunden wird, wird keines aufgerufen. Setzen der Umgebungsvariablen auf die
leere Zeichenkette oder den Wert »cat« ist äquivalent zur
Übergabe von
--no-pager.
Beachten Sie: Falls $SYSTEMD_PAGERSECURE nicht gesetzt ist,
dann wird $SYSTEMD_PAGER (sowie $PAGER) ohne
Rückmeldung ignoriert.
$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.
Beachten Sie, dass das Setzen der regulären
Umgebungsvariablen $LESS keine Auswirkungen auf die Ausführung
von less(1) durch systemd(1)-Werkzeuge hat.
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.
Beachten Sie, dass das Setzen der regulären
Umgebungsvariablen $LESSCHARSET keine Auswirkungen auf die
Ausführungen von less(1) durch systemd(1)-Werkzeuge
hat.
$SYSTEMD_PAGERSECURE
Akzeptiert einen logischen Wert. Wenn wahr, wird der
»sichere« Modus des Textanzeigeprogramms verwandt, falls falsch,
wird dieser deaktiviert. Falls
$SYSTEMD_PAGERSECURE überhaupt
nicht gesetzt ist, dann wird der sichere Modus aktiviert, falls die effektive
Kennung nicht identisch zu dem Eigentümer der Anmeldesitzung ist, siehe
geteuid(2) und
sd_pid_get_owner_uid(3). Im sicheren Modus wird
LESSSECURE=1 beim Aufruf des Textanzeigeprogramms gesetzt und das
Textanzeigeprogramm muss Befehle deaktivieren, die neue Dateien öffnen
oder erstellen oder die einen neuen Unterprozess starten. Falls
$SYSTEMD_PAGERSECURE überhaupt nicht gesetzt ist, werden
Textanzeigeprogramme, bei denen unbekannt ist, ob sie einen sicheren Modus
implementieren, nicht verwandt. (Derzeit implementiert nur
less(1)
einen sicheren Modus.)
Hinweis: Wenn Befehle mit erhöhten Rechten
ausgeführt werden, beispielsweise mittels sudo(8) oder
pkexec(1), muss Vorsicht walten gelassen werden, um sicherzustellen,
dass keine ungeplanten interaktiven Funktionalitäten aktiviert
werden. Der »sichere« Modus für das Textanzeigeprogramm
kann wie oben beschrieben automatisch aktiviert werden. Durch Setzen von
SYSTEMD_PAGERSECURE=0 oder durch Nichtenfernen dieser Einstellung aus
der ererbten Umgebung wird es dem Benutzer ermöglicht, beliebige
Befehle auszuführen. Beachten Sie, dass auch
$SYSTEMD_PAGERSECURE gesetzt werden muss, falls die Variablen
$SYSTEMD_PAGER oder $PAGER berücksichtigt werden
sollen. Es kann sinnvoll sein, stattdessen das Textanzeigeprogramm komplett
mit --no-pager zu deaktivieren.
$SYSTEMD_COLORS
Akzeptiert ein logisches Argument. Wenn wahr, werden
systemd und verwandte Hilfswerkzeuge Farben in ihrer Ausgabe verwenden,
andernfalls wird die Ausgabe einfarbig sein. Zusätzlich kann die
Variable eine der folgenden besonderen Werte annehmen: »16«,
»256«, um die Verwendung von Farbe auf die grundlegenden 16 bzw.
256 ANSI-Farben zu beschränken. Dies kann festgelegt werden, um die auf
$TERM und der vorliegenden Verbindung der Konsole basierende
automatische Entscheidung 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.