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

Source: https://www.jpkc.com/db/cheatsheets/shell-system/loginctl/

<!-- PROSE:intro -->
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.
<!-- PROSE:intro:end -->

## Sitzungen

`loginctl list-sessions` — Listet alle aktiven Sitzungen auf.

```bash
loginctl list-sessions
```

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

```bash
loginctl session-status 3
```

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

```bash
loginctl show-session 3
```

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

```bash
sudo loginctl terminate-session 3
```

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

```bash
loginctl lock-session 3
```

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

```bash
loginctl unlock-session 3
```

## Nutzer

`loginctl list-users` — Listet alle angemeldeten Nutzer auf.

```bash
loginctl list-users
```

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

```bash
loginctl user-status admin
```

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

```bash
loginctl show-user admin
```

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

```bash
sudo loginctl terminate-user guest
```

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

```bash
sudo loginctl kill-user guest
```

## Linger

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

```bash
sudo loginctl enable-linger deploy
```

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

```bash
sudo loginctl disable-linger deploy
```

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

```bash
loginctl show-user deploy -p Linger
```

## Plätze (Seats)

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

```bash
loginctl list-seats
```

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

```bash
loginctl seat-status seat0
```

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

```bash
loginctl show-seat seat0
```

<!-- PROSE:outro -->
## 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.

## Weiterführende Links

- [ubuntuusers-Wiki: systemd](https://wiki.ubuntuusers.de/systemd/) – deutschsprachige Einführung in systemd inklusive Sitzungs- und Dienstverwaltung
- [systemd (Wikipedia)](https://de.wikipedia.org/wiki/Systemd) – Einordnung von logind im systemd-Ökosystem
<!-- PROSE:outro:end -->

## Verwandte Kommandos

- [systemctl](https://www.jpkc.com/db/cheatsheets/shell-system/systemctl/) – systemd-Dienste und Units steuern (inkl. `--user`-Diensten)
- [journalctl](https://www.jpkc.com/db/cheatsheets/shell-system/journalctl/) – das systemd-Journal abfragen und Sitzungs-Logs auswerten
- [su](https://www.jpkc.com/db/cheatsheets/shell-system/su/) – Nutzer wechseln und Befehle als anderer Nutzer ausführen

