loginctl — Sitzungen und Nutzer von systemd-logind verwalten

Praxis-Guide zu loginctl: Sitzungen und Nutzer von systemd-logind anzeigen, sperren, beenden und mit Linger Dienste ohne aktiven Login laufen lassen.

loginctl ist die Schnittstelle zum systemd-Login-Manager (systemd-logind) und zeigt dir, wer gerade an deinem System angemeldet ist – über Sitzungen, Nutzer und physische Plätze (Seats) hinweg. Du kannst Sitzungen einsehen und sperren, hängengebliebene Logins beenden und per Linger dafür sorgen, dass Nutzerdienste auch ohne aktive Anmeldung weiterlaufen. Dieser Guide zeigt dir die Befehle, die du für Verwaltung und Fehlersuche im Alltag wirklich brauchst – von der reinen Anzeige bis zu den eingreifenden Aktionen.

Sitzungen

loginctl list-sessions — Listet alle aktiven Sitzungen auf.

loginctl list-sessions

loginctl session-status <session-id> — Zeigt den ausführlichen Status einer Sitzung.

loginctl session-status 3

loginctl show-session <session-id> — Zeigt die Eigenschaften einer Sitzung (maschinenlesbar).

loginctl show-session 3

loginctl terminate-session <session-id> — Beendet eine bestimmte Sitzung (destruktiv: laufende Programme der Sitzung werden hart beendet).

sudo loginctl terminate-session 3

loginctl lock-session <session-id> — Sperrt den Bildschirm einer Sitzung.

loginctl lock-session 3

loginctl unlock-session <session-id> — Entsperrt den Bildschirm einer Sitzung.

loginctl unlock-session 3

Nutzer

loginctl list-users — Listet alle angemeldeten Nutzer auf.

loginctl list-users

loginctl user-status <user> — Zeigt den ausführlichen Status der Sitzungen eines Nutzers.

loginctl user-status admin

loginctl show-user <user> — Zeigt die Eigenschaften eines Nutzers (maschinenlesbar).

loginctl show-user admin

loginctl terminate-user <user> — Beendet alle Sitzungen eines Nutzers (destruktiv: nicht gespeicherte Arbeit geht verloren).

sudo loginctl terminate-user guest

loginctl kill-user <user> — Sendet ein Signal an alle Prozesse eines Nutzers (destruktiv: beendet laufende Prozesse).

sudo loginctl kill-user guest

Linger

loginctl enable-linger <user> — Aktiviert Linger: Nutzerdienste laufen auch ohne aktive Anmeldung weiter.

sudo loginctl enable-linger deploy

loginctl disable-linger <user> — Deaktiviert Linger: Nutzerdienste stoppen, sobald sich der Nutzer abmeldet.

sudo loginctl disable-linger deploy

loginctl show-user <user> -p Linger — Prüft, ob Linger für einen Nutzer aktiviert ist.

loginctl show-user deploy -p Linger

Plätze (Seats)

loginctl list-seats — Listet alle Plätze (physische Arbeitsplätze) auf.

loginctl list-seats

loginctl seat-status <seat> — Zeigt den Status eines Platzes.

loginctl seat-status seat0

loginctl show-seat <seat> — Zeigt die Eigenschaften eines Platzes.

loginctl show-seat seat0

Fazit

loginctl ist dein Fenster in die Sitzungsverwaltung von systemd: list-sessions, list-users und session-status zeigen dir gefahrlos, wer angemeldet ist und was läuft – ideal für die Fehlersuche. Besonders nützlich ist enable-linger: Erst damit laufen per systemctl --user gestartete Dienste (etwa ein Deploy-Worker oder ein Hintergrund-Job) weiter, wenn niemand mehr eingeloggt ist. Vorsicht bei den eingreifenden Aktionen: terminate-session, terminate-user und kill-session/kill-user beenden laufende Sitzungen und Prozesse sofort – nicht gespeicherte Arbeit der betroffenen Nutzer geht verloren. Diese Befehle brauchen sudo und loginctl funktioniert nur auf systemd-Systemen.

Verwandte Kommandos

  • systemctl – systemd-Dienste und Units steuern (inkl. --user-Diensten)
  • journalctl – das systemd-Journal abfragen und Sitzungs-Logs auswerten
  • su – Nutzer wechseln und Befehle als anderer Nutzer ausführen