Scroll to navigation

LOGINCTL(1) loginctl LOGINCTL(1)

BEZEICHNUNG

loginctl - Steuern des Systemd-Anmeldeverwalters

ÜBERSICHT

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

BESCHREIBUNG

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

BEFEHLE

Die folgenden Befehle werden verstanden:

Sitzungsbefehle

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. Falls das Argument als leere Zeichenketten angegeben ist, wird die Sitzung, die den Befehl aufruft, beendet.

kill-session Kennung

Sendet ein Signal an einen oder mehrere Prozesse der Sitzung. Verwenden Sie --kill-whom=, um den zu tötenden Prozess auszuwählen. Verwenden Sie --signal=, um das zu sendende Signal auszuwählen. Falls das Argument als leere Zeichenketten angegeben ist, wird das Signal an die Sitzung, die den Befehl aufruft, gesandt.

Dienstprogramme für Benutzer

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…]

Aktiviert/Deaktiviert Benutzer-Fortbestehen für einen oder mehrere Benutzer. 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. Falls das Argument als leere Zeichenketten angegeben ist, werden die Sitzungen des Benutzers, der den Befehl aufruft, beendet.

kill-user BENUTZER

Sendet ein Signal an alle Prozesse eines Benutzers. Verwenden Sie --signal=, um das zu verwendende Signal auszuwählen. Falls das Argument als leere Zeichenketten angegeben ist, wird das Signal an die Sitzungen des Benutzers, der den Befehl aufruft, gesandt.

Sitz-Befehle

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

Die folgenden Optionen werden verstanden:

--no-ask-password

Befragt den Benutzer nicht für Authentifizierung für privilegierte Aktionen.

-p, --property=

Begrenzt bei der Anzeige der Eigenschaften der Sitzung/des Benutzers/des Sitzes die Anzeige auf die als Argument angegebenen Eigenschaften. 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

Gibt bei der Anzeige von Sitzungs-/Benutzer-/Sitzeigenschaften mit show nur den Wert aus und überspringt den Eigenschaftsnamen und »=«.

-a, --all

Zeigt bei der Anzeige der Sitzungs-/Benutzer-/Sitz-Eigenschaften alle Eigenschaften an, unabhängig davon, ob sie gesetzt sind oder nicht.

-l, --full

Verkürzt Prozessbaumeinträge nicht.

--kill-whom=

Wählt den zu tötende Prozess aus, 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.

Der besondere Wert »help« wird alle bekannten Werte darstellen und das Programm wird sich sofort beenden; der besondere Wert »list« wird alle bekannten Werte zusammen mit ihren numerischen Signalnummern darstellen und das Programm wird sich sofort beenden.

-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. Optional kann diesem ein Benutzername, abgetrennt durch ein »@«-Zeichen, als der verbunden werden soll, vorangestellt werden. Falls die besondere Zeichenkette ».host« anstelle des Container-Names verwandt wird, wird eine Verbindung zu dem lokalen System aufgebaut (das ist nützlich, um sich zu dem Benutzerbus eines bestimmten Benutzers zu verbinden: »--user --machine=lennart@.host«. Falls die »@«-Syntax nicht verwandt wird, wird die Verbindung als Benutzer »root« vorgenommen. Falls die »@«-Syntax verwandt wird, kann entweder die linke oder die rechte Seite fortgelassen werden (aber nicht beide). In diesem Fall wird der lokale Benutzername und ».host« angenommen.

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

EXIT-STATUS

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

BEISPIELE

Beispiel 1. Benutzerstatus abfragen

$ loginctl user-status
fatima (1005)

Since: Sat 2016-04-09 14:23:31 EDT; 54min ago
State: active
Sessions: 5 *3
Unit: user-1005.slice
├─user@1005.service

├─session-3.scope

└─session-5.scope
├─3473 login -- fatima
└─3515 -zsh Apr 09 14:40:30 laptop login[2325]: pam_unix(login:session):
session opened for user fatima by LOGIN(uid=0) Apr 09 14:40:30 laptop login[2325]: LOGIN ON tty3 BY fatima

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.

UMGEBUNGSVARIABLEN

$SYSTEMD_LOG_LEVEL

Die maximale Protokollierstufe ausgesandter Nachrichten (Nachrichten mit einer höheren Protokollierstufe, d.h. weniger wichtige, werden unterdrückt). Sie muss (in absteigender Reihenfolge) entweder alert, crit, err, warning, notice, info, debug oder eine Ganzzahl im Bereich 0…7 sein. Siehe syslog(3) für weitere Informationen.

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

$SYSTEMD_LOG_LOCATION

Ein logischer Wert. Falls wahr, wird den Protokollnachrichten ein Dateinamen 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 Metadatan 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_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.

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.

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_PAGERSECURE

Akzeptiert einen logischen Wert. Wenn wahr, wird der »sichere« Modus des Seitenanzeigeprogramms 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 Seitenanzeigeprogramms gesetzt und das Seitenanzeigeprogramm muss Befehle deaktivieren, die neue Dateien öffnen oder erstellen oder die einen neuen Unterprozess starten. Falls $SYSTEMD_PAGERSECURE überhaupt nicht gesetzt ist, werden Seitenanzeigeprogramme, 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 Seitenanzeigeprogramm 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 den Seitenanzeiger 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.

SIEHE AUCH

systemd(1), systemctl(1), systemd-logind.service(8), logind.conf(5)

Ü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 die Mailingliste der Übersetzer.

systemd 252