Richtige Uhrzeit am Raspberry Pi mit NTP

In vielen Fällen übernimmt ein Einplatinencomputer wie z.B. ein Raspberry Pi die Aufgabe eines Servers, indem er gewisse Dienste zur Verfügung stellt. Wenn das Gerät im 24*7 Modus betrieben wird, ist es sehr wichtig, dass die Uhrzeit und das Datum immer richtig gesetzt sind. Dafür ist bei der für den Raspberry Pi wohl gängigsten Distribution “Raspbian” bereits “NTP” mit an Bord, welches sich darum kümmert, dass das Gerät jeweils die aktuelle Zeit hat.

Ob die Uhrzeit die Gewünschte ist, lässt sich ganz leicht per Befehl prüfen.

date

Raspberry Pi Uhrzeit ntp fake-hwcklock timedatectl

Per Default ist das System so konfiguriert, dass die Weltzeit (UTC) verwendet wird. Diese ist natürlich eine andere als in Deutschland. Um die für Deutschland gültige Zeitzone zu setzen, müssen ein paar kleine Konfigurationsänderungen durchgeführt werden. Als Erstes können optional die für NTP verwendeten Zeitserver angepasst werden, damit auch hier die für Deutschland zuständigen Server genutzt werden. Jedoch ist dieser Schritt nicht zwingend erforderlich. Die Konfiguration befindet sich in der Datei “/etc/ntp.conf”.

sudo nano /etc/ntp.conf

Raspberry Pi Uhrzeit ntp fake-hwcklock timedatectl

Im nächsten Schritt kann die Zeitzone richtig gesetzt werden. Dafür gibt es zwei Möglichkeiten. Wenn die Zeitzone bekannt ist, kann diese direkt angegeben werden.

sudo timedatectl set-timezone Europe/Berlin

Bei Bedarf können auch alle verfügbaren Zeitzonen angezeigt werden.

timedatectl list-timezones

Alternativ hierzu, kann die gewünschte Zeitzone auch über ein Menü gewählt werden.

sudo dpkg-reconfigure tzdata

Raspberry Pi Uhrzeit ntp fake-hwcklock timedatectl

Danach wird auch die korrekte Zeit angezeigt, sobald der Befehl “date” erneut ausgeführt wird. Sollte dem nicht so sein, kann der NTP Abgleich einmalig erzwungen werden.

sudo ntpd -qg

Da der Raspberry Pi keine Hardware Uhr mit an Bord hat, ist per Default noch das Paket “fake-hwclock” installiert. Dies schreibt stündlich die aktuelle Uhrzeit in eine Datei. Bei einem Neustart wird die dort gespeicherte Uhrzeit wieder eingelesen. Das ist natürlich nicht so genau wie eine Hardware Uhr (RTC), jedoch für die meisten Fälle absolut ausreichend. Der Status der gespeicherten Uhrzeit kann natürlich auch abgefragt werden.

cat /etc/fake-hwclock.data

Soll die Datei mit der frisch geänderten Uhrzeit sofort aktualisiert werden, wird folgender Befehl benötigt.

sudo fake-hwcklock save

Somit ist sowohl die korrekte Zeitzone als auch gleich die richtige Uhrzeit für den Raspberry Pi gesetzt.

Update 19.02.2018:

Eine leichtgewichtigere Möglichkeit stellt systemd-timesyncd dar: Zum Artikel