loginctl

Aus Foxwiki


loginctl - steuert den Systemd-Anmeldeverwalter

Beschreibung

loginctl kann zum Prüfen und Steuern des Zustandes des Anmeldeverwalters systemd-logind.service(8) von systemd(1) verwandt werden.

Installation

Anwendung

Benutzerstatus abfragen

$ loginctl user-status
dirkwagner (1000)
Since: Sat 2022-08-09 14:23:31 CEST; 2h 32min ago
State: active
Sessions: 5 *3
Unit: user-1000.slice
├─user@1000.service
├─session-3.scope
├─session-5.scope
├─3473 login -- dirkwagner
└─3515 -bash
Aug 09 14:40:30 laptop login[2526]: pam_unix(login:session): session opened for user dirkwagner by LOGIN(uid=0)
Aug 09 14:40:30 laptop login[2526]: LOGIN ON tty2 BY dirkwagner
  • Es gibt zwei Sitzungen, 3 und 5. Sitzung 3 ist eine graphische Sitzung, die mit einem Stern markiert ist.
  • Es wird der Verarbeitungsbaum einschließlich der zwei entsprechenden Bereichs-Units und der Benutzerverwaltungs-Unit angezeigt.

Aufruf

Sitzungsbefehle

Befehl Beschreibung
list‑sessions Listet die aktuellen Sitzungen auf.
session‑status [Kennung…] Zeigt knappe Laufzeitinformationen zu einer oder mehrerer Sitzungen an, gefolgt von den neusten Protokolldaten aus dem Journal. Akzeptiert eine oder mehrere Sitzungskennungen als Parameter. Falls keine Sitzungskennungen übergeben werden, wird der Status der Sitzung des Aufrufenden angezeigt. Diese Funktion ist dazu gedacht, menschenlesbare Ausgabe zu erzeugen. Falls Sie Computer-auswertbare Ausgaben suchen, verwenden Sie stattdessen show-session.
show-session [Kennung…] Zeigt Eigenschaften von einer oder mehrerer Sitzungen oder dem Verwalter selbst an. Falls kein Argument angegeben ist, werden die Eigenschaften des Verwalters angezeigt. Falls eine Sitzungskennung angegeben ist, werden die Eigenschaft der Sitzungen angezeigt. Standardmäßig werden leere Eigenschaften unterdrückt. Verwenden Sie --all, um diese auch anzuzeigen. Um bestimmte Eigenschaften zur Anzeige auszuwählen, verwenden Sie --property=. Dieser Befehl ist dazu gedacht, verwandt zu werden, wannimmer Computer-auswertbare Ausgabe benötigt wird. Verwenden Sie session-status, falls Sie nach formatierter, menschenlesbarer Ausgabe suchen.
activate [Kennung] Aktiviert eine Sitzung. Dies bringt eine Sitzung in den Vordergrund, falls eine andere Sitzung derzeit im respektiven Sitz im Vordergrund ist. Akzeptiert eine Sitzungskennung als Argument. Falls kein Argument angegeben ist, wird die Sitzung des Aufrufenden in den Vordergrund gebracht.
lock-session [Kennung…], unlock-session [Kennung…] Aktiviert/Deaktiviert die Bildschirmsperre auf einer oder mehreren Sitzungen, falls die Sitzung dies unterstützt. Akzeptiert eine oder mehrere Sitzungskennungen als Argumente. Falls kein Argument angegeben ist, wird die Sitzung des Aufrufenden ge- bzw. entsperrt.
lock-sessions, unlock-sessions Aktiviert/Deaktiviert die Bildschirmsperre auf allen aktuellen Sitzungen, die dies unterstützen.
terminate-session Kennung… Beendet eine Sitzung. Dies tötet alle Prozesse der Sitzung und gibt alle dieser Sitzung zugeordneten Ressourcen frei.
kill-session Kennung… Sendet ein Signal an einen oder mehrere Prozesse der Sitzung. Verwenden Sie --kill-who=, um den zu tötenden Prozess auszuwählen. Verwenden Sie --signal=, um das zu sendende Signal auszuwählen.

Dienstprogramme für Benutzer

Befehl Beschreibung
list-users Listet alle aktuell angemeldeten Benutzer auf.
user-status [BENUTZER…] Zeigt knappe Laufzeitinformationen über eine oder mehrere angemeldete Benutzer an, gefolgt von den neusten Protokolldaten aus dem Journal. Akzeptiert eine oder mehrere Benutzernamen oder numerische Benutzerkennungen als Parameter. Falls kein Parameter übergeben wurde, wird der Status für den Benutzer der Sitzung des Aufrufenden angezeigt. Diese Funktion ist dazu gedacht, menschenlesbare Ausgabe zu erzeugen. Falls Sie Computer-auswertbare Ausgabe suchen, verwenden Sie stattdessen show-user.
show-user [BENUTZER…] Zeigt Eigenschaften von einer oder mehreren Benutzern oder dem Verwalter selbst an. Falls kein Argument angegeben ist, werden die Eigenschaften des Verwalters angezeigt. Falls ein Benutzer angegeben ist, werden die Eigenschaften des Benutzers angezeigt. Standardmäßig werden leere Eigenschaften unterdrückt. Verwenden Sie --all, um diese auch anzuzeigen. Um bestimmte Eigenschaften zur Anzeige auszuwählen, verwenden Sie --property=. Dieser Befehl ist dazu gedacht, verwandt zu werden, wannimmer Computer-auswertbare Ausgabe benötigt wird. Verwenden Sie user-status, falls Sie nach formatierter, menschenlesbarer Ausgabe suchen.
enable-linger [BENUTZER…], disable-linger [BENUTZER…] Benutzer-Fortbestehen für einen oder mehrere Benutzer aktivieren/deaktivieren. Falls dies für einen bestimmten Benutzer aktiviert ist, wird für diesen Benutzer beim Systemstart ein Benutzerverwalter gestartet und nach Abmeldungen aufrechterhalten. Dies erlaubt es Benutzern, die nicht angemeldet sind, langlaufende Dienste auszuführen. Akzeptiert einen oder mehrere Benutzername(n) oder numerische UIDs als Argument. Falls kein Argument angegeben ist, wird das Benutzer-Fortbestehen für den Benutzer der Sitzung des Aufrufenden aktiviert/deaktiviert. Siehe auch die Einstellung KillUserProcesses= in logind.conf(5).
terminate-user BENUTZER… Beendet alle Sitzungen für einen Benutzer. Dies tötet alle Prozesse von allen Sitzungen des Benutzers und gibt alle dem Benutzer zugeordneten Laufzeitressourcen frei.
kill-user BENUTZER… Sendet ein Signal an alle Prozesse eines Benutzers. Verwenden Sie --signal=, um das zu verwendende Signal auszuwählen.

Sitz-Befehle

Befehl Beschreibung
list-seats Listet die derzeit verfügbaren Sitze auf dem lokalen System auf.
seat-status [NAME…] Zeigt knappe Laufzeitinformationen über einen oder mehrere Sitze an. Akzeptiert einen oder mehrere Sitznamen als Parameter. Falls keine Sitznamen übergeben werden, wird der Status des Sitzes der Sitzung des Aufrufenden angezeigt. Diese Funktion ist dazu gedacht, menschenlesbare Ausgabe zu erzeugen. Falls Sie Computer-auswertbare Ausgabe suchen, verwenden Sie stattdessen show-seat.
show-seat [NAME…] Zeigt Eigenschaften von einem oder mehreren Sitzen oder dem Verwalter selbst an. Falls kein Argument angegeben ist, werden die Eigenschaften des Verwalters angezeigt. Falls ein Sitz angegeben ist, werden die Eigenschaften des Sitzes angezeigt. Standardmäßig werden leere Eigenschaften unterdrückt. Verwenden Sie --all, um diese auch anzuzeigen. Um bestimmte Eigenschaften zur Anzeige auszuwählen, verwenden Sie --property=. Dieser Befehl ist dazu gedacht, verwandt zu werden, wannimmer Computer-auswertbare Ausgabe benötigt wird. Verwenden Sie seat-status, falls Sie nach formatierter, menschenlesbarer Ausgabe suchen.
attach NAME GERÄT… Hängt ein oder mehrere Geräte dauerhaft an einen Sitz. Das Gerät sollte mittels eines Gerätepfades im Dateisystem /sys angegeben werden. Um einen neuen Sitz zu erzeugen, hängen Sie mindestens eine Graphikkarte an einen bisher unbenutzten Sitznamen. Sitznamen dürfen aus a–z, A–Z, 0–9, »-« und »_« bestehen und müssen mit »seat« beginnen. Um eine Zuweisung eines Geräts zu einem bestimmten Sitz aufzulösen, weisen sie es einfach einem anderen Sitz zu oder verwenden Sie flush-devices.
flush-devices Entfernt eine vorher mit attach erstellte Gerätezuweisung. Nach diesem Aufruf verbleiben nur automatisch erstellte Sitze und ihnen ist alle Sitz-Hardware zugeordnet.
terminate-seat NAME… Beendet alle Sitzungen auf einem Sitz. Dies tötet alle Prozesse von allen Sitzungen auf einem Sitz und gibt alle ihnen zugeordneten Laufzeitressourcen frei.

Optionen

Unix GNU Beschreibung
--no-ask-password Den Benutzer nicht für Authentifizierung für privilegierte Aktionen befragen.
-p --property= Bei der Anzeige der Eigenschaften der Sitzung/des Benutzers/des Sitzes wird die Anzeige auf die als Argument angegebenen Eigenschaften begrenzt. Falls nicht angegeben, werden alle gesetzten Eigenschaften angezeigt. Das Argument sollte ein Eigenschaftsname wie »Sessions« sein. Falls mehr als einmal angegeben, werden alle Eigenschaften mit den angegebenen Namen angezeigt.
--value Bei der Anzeige von Sitzungs-/Benutzer-/Sitzeigenschaften mit show wird nur der Wert ausgegeben und der Eigenschaftsname und »=« übersprungen.
-a --all Bei der Anzeige der Sitzungs-/Benutzer-/Sitz-Eigenschaften werden alle Eigenschaften angezeigt, unabhängig davon, ob sie gesetzt sind oder nicht.
-l --full Prozessbaumeinträge nicht verkürzen.
--kill-who= Der zu tötende Prozess wird ausgewählt, wenn dies zusammen mit kill-session verwandt wird. Muss entweder leader oder all sein, um auszuwählen, ob nur der Leitprozess einer Sitzung oder alle Prozesse der Sitzung getötet werden sollen. Standardmäßig all, falls nicht angegeben.
-s --signal= Wählt das an den ausgewählten Prozess zu sendende Signal, wenn es zusammen mit kill-session oder kill-user verwandt wird. Muss eine der gut bekannten Signal-Angaben wie SIGTERM, SIGINT oder SIGSTOP sein. Standardmäßig SIGTERM, falls nicht angegeben.
-n --lines= Steuert die Anzahl der anzuzeigenden Journal-Zeilen, startend bei der neusten, wenn es zusammen mit user-status und session-status verwandt wird. Akzeptiert eine positive Ganzzahl als Argument. Standardmäßig 10.
-o --output= Steuert die Formatierung der angezeigten Journal-Einträge, wenn es zusammen mit user-status und session-status verwandt wird. Siehe journalctl(1) für die verfügbare Auswahl. Standardmäßig »short«.
-H --host= Führt die Aktion aus der Ferne aus. Geben Sie den Rechnernamen oder einen Benutzernamen und Rechnernamen (getrennt durch »@«) an, zu dem verbunden werden soll. Dem Rechnernamen darf optional ein Port, auf dem SSH auf Anfragen wartet, getrennt durch »:« und dann ein Container auf dem angegebenen Host angehängt werden, womit direkt zu einem bestimmten Container auf dem angegebenen Rechner verbunden wird. Dies verwendet SSH, um mit der Maschinen-Verwalterinstanz auf dem Rechner in der Ferne zu kommunizieren. Container-Namen dürfen mit machinectl -H RECHNER aufgezählt werden. Stellen Sie IPv6-Adressen in Klammern.
-M --machine= Führt die Aktion in einem lokalen Container aus. Geben Sie den Namen des Containers an, zu dem verbunden werden soll.
--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.

Parameter

Umgebung

Variable Beschreibung
$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.

Rückgabewert

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

Konfiguration

Dateien

Sicherheit

Dokumentation

RFC

Man-Page

Info-Pages

Siehe auch

  1. systemd(1)
  2. systemctl(1)
  3. systemd-logind.service(8)
  4. logind.conf(5)

Links

Projekt

Weblinks