# timedatectl — Systemzeit, Zeitzone und NTP unter systemd verwalten

> Systemuhr, Zeitzone und automatische Zeitsynchronisation (NTP) auf systemd-Systemen anzeigen und setzen – mit timedatectl im Griff.

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

<!-- PROSE:intro -->
`timedatectl` ist das zentrale systemd-Werkzeug, um Systemuhr, Zeitzone und automatische Zeitsynchronisation auf einem Linux-System zu steuern. Ohne Argumente zeigt es dir Lokal- und UTC-Zeit, die eingestellte Zeitzone und den NTP-Status auf einen Blick. Über `set-timezone` und `set-ntp` passt du beides dauerhaft an, ohne in Konfigurationsdateien zu wühlen. Gerade eine korrekte Uhrzeit ist mehr als Kosmetik: Läuft sie auseinander, scheitern TLS-Zertifikate, Cron-Jobs und Log-Korrelation.
<!-- PROSE:intro:end -->

## Status & Infos

`timedatectl` — Zeigt aktuelle Zeit, Zeitzone und NTP-Status an.

```bash
timedatectl
```

`timedatectl status` — Zeigt detaillierten Zeit- und Datumsstatus (identisch zum Aufruf ohne Argumente).

```bash
timedatectl status
```

`timedatectl show` — Zeigt die Eigenschaften in maschinenlesbarem Format.

```bash
timedatectl show
```

`timedatectl timesync-status` — Zeigt Details zur NTP-Synchronisation (Server, Offset, Latenz).

```bash
timedatectl timesync-status
```

## Zeitzone

`timedatectl list-timezones` — Listet alle verfügbaren Zeitzonen auf.

```bash
timedatectl list-timezones
```

`timedatectl list-timezones | grep <region>` — Sucht nach einer Zeitzone.

```bash
timedatectl list-timezones | grep Berlin
```

`timedatectl set-timezone <timezone>` — Setzt die Zeitzone des Systems.

```bash
sudo timedatectl set-timezone Europe/Berlin
```

`timedatectl set-timezone UTC` — Setzt die Zeitzone auf UTC.

```bash
sudo timedatectl set-timezone UTC
```

## Zeit & Datum setzen

`timedatectl set-time '<datetime>'` — Setzt Datum und Uhrzeit des Systems manuell.

```bash
sudo timedatectl set-time '2026-03-19 14:30:00'
```

`timedatectl set-time '<date>'` — Setzt nur das Datum.

```bash
sudo timedatectl set-time '2026-03-19'
```

`timedatectl set-time '<time>'` — Setzt nur die Uhrzeit.

```bash
sudo timedatectl set-time '14:30:00'
```

## NTP & Synchronisation

`timedatectl set-ntp true` — Aktiviert die automatische Zeitsynchronisation via systemd-timesyncd (NTP).

```bash
sudo timedatectl set-ntp true
```

`timedatectl set-ntp false` — Deaktiviert NTP (nötig, bevor die Zeit manuell gesetzt werden kann).

```bash
sudo timedatectl set-ntp false
```

<!-- PROSE:outro -->
## Fazit

Für den Alltag reichen meist drei Befehle: `timedatectl` für den Status, `set-timezone Europe/Berlin` für die richtige Zeitzone und `set-ntp true`, damit systemd-timesyncd die Uhr automatisch synchron hält. Alle `set-*`-Aktionen schreiben in den Systemzustand und brauchen daher `sudo`; das Werkzeug setzt zudem ein systemd-basiertes System voraus. Die Zeit manuell über `set-time` zu setzen funktioniert nur bei deaktiviertem NTP (`set-ntp false`) – und ist im Normalfall die schlechtere Wahl. Behalte im Hinterkopf, dass eine falsch laufende Uhr keine Kleinigkeit ist: Sie lässt TLS-Zertifikate fehlschlagen, verfälscht Log-Zeitstempel und kann zeitbasierte Authentifizierung (etwa Kerberos oder TOTP) komplett blockieren.

## Weiterführende Links

- [Arch-Wiki: Systemzeit](https://wiki.archlinux.org/title/System_time) – ausführliche Referenz zu Systemuhr, Zeitzone und NTP unter Linux
- [systemd-Doku: timedatectl(1)](https://www.freedesktop.org/software/systemd/man/latest/timedatectl.html) – offizielle Handbuchseite mit allen Unterbefehlen und Optionen
<!-- PROSE:outro:end -->

## Verwandte Kommandos

- [hostnamectl](https://www.jpkc.com/db/cheatsheets/shell-system/hostnamectl/) – Hostname und Maschinen-Metadaten über systemd verwalten
- [systemctl](https://www.jpkc.com/db/cheatsheets/shell-system/systemctl/) – systemd-Dienste wie systemd-timesyncd steuern und prüfen
- [journalctl](https://www.jpkc.com/db/cheatsheets/shell-system/journalctl/) – das systemd-Journal mit Zeitstempeln abfragen und filtern

