YouTube-Logo
Aufschnur Logo

Raspberry Pi: Automatisch immer die richtige Uhrzeit

Raspbian ShellDa der Raspberry Pi keine CMOS-Batterie besitzt, wie man das von einem PC her kennt, „vergisst“ er die Uhrzeit und muss daher über einen Zeitserver aktualisiert werden. Der ntp-Dienst ist bei Raspbian zwar per default installiert, doch er läuft ständig im Hintergrund und belegt damit Systemressourcen. Und davon haben wir beim RasPi ja nichts zu verschenken.

Eine Alternative zum ntp-Daemon ist ntpdate, das man z.B. als regelmäßigen Cronjob aufrufen lassen kann und das sich nach der Zeitsynchronisierung wieder beendet. ntpdate ist zwar mittlerweile „deprecated“, wird also nicht mehr weiterentwickelt. Doch für unseren Zweck tut es einen guten Dienst.

UPDATE: Da es mit ntpdate vermehrt Probleme gibt, rate ich von dieser Vorgehensweise vorerst ab.

Zuerst sollte die korrekte Zeitzone festgelegt werden, falls noch nicht geschehen:

sudo dpkg-reconfigure tzdata

Nun deinstallieren wir den NTP-Dienst:

sudo apt-get purge ntp

…und installieren ntpdate:

sudo apt-get install ntpdate

Anschließend müssen wir nur noch einen Eintrag in die crontab machen, damit ntpdate regelmäßig automatisch aufgerufen wird. Wir öffnen die crontab zur Bearbeitung:

sudo crontab -e

…und richten einen neuen Cronjob für den Zeitabgleich ein. Wir verwenden dazu den deutschen Zeitserver-Pool. Selbstredend muss euer RasPi dazu mit einer bestehenden Internetverbindung, z.B. per Ethernet-Kabel oder WLAN-Adapter, verbunden sein. Folgende Einträge fügt ihr als neue Zeilen in die crontab hinzu, um die Uhrzeit bei jedem Reboot sowie z.B. alle 6 Stunden automatisch synchronisieren zu lassen:

@reboot ntpdate -s 0.de.pool.ntp.org
0 */6 * * * ntpdate -s 0.de.pool.ntp.org

Abschließend die Datei noch abspeichern mit STRG + O und schließen mit STRG + X.

Diese Beiträge könnten dich auch interessieren:

20 Kommentare

kamal salem
9. Januar 2015 um 13:44 Uhr

ich hätte eine Frage, und zwar wenn ich internet über LAN oder WLAN funktioniert das super, aber wenn ich internet über GSM Modul habe, bekommt das PI immer falsche Uhrzeit (fast 30 minuten weniger als die richtige Uhrzeit), haben Sie vielleicht Ahnung, warum sowas passiert?

Danke im Vorraus.

MfG

Horster
16. Februar 2015 um 8:36 Uhr

sudo crontab –e
–e: Datei oder Verzeichnis nicht gefunden

Sicher das der Befehl korrekt ist?

Michael
16. Februar 2015 um 10:35 Uhr

Der richtige Befehl wäre „sudo crontab -e“ (ja, mit sudo).

LG

Aufschnürer
21. Februar 2015 um 15:27 Uhr

Danke für den Hinweis. Ja der Befehl ist an sich schon korrekt, allerdings hat mir der Editor aus dem Bindestrich einen Gedankenstrich gemacht. Optisch kaum unterscheidbar, aber beim Kopieren und Einfügen in die Unix-Konsole funktioniert das dann natürlich nicht. Habe es im Text korrigiert.

Folli
17. März 2015 um 2:25 Uhr

Geht ja prima!
Mein Raspi mit Debian Wheezy läuft autark als „Logger“ für eine PV-Anlage (Stichwort Hyperion)
Nun ist es unglücklich, wenn sich die Uhrzeit während des loggens – also bei Licht/Sonne verändert!
Frage: wie muß die Zeile die jetzt alle 6 stunden nachfragt (0 */6 * * * ntpdate -s 0.de.pool.ntp.org) aussehen, wenn nur Nachts um 1 nachgefragt werden soll?

Matthias
23. März 2015 um 11:44 Uhr

Schau doch mal in der Hilfe von Crontab nach:
http://www.raspberrypi.org/documentation/linux/usage/cron.md

Für täglichen Abgleich um 1:00 Uhr (persönlich habe ich 1x täglich um 4 Uhr, da ich nach der Zeitumstellung um 2:00 oder um 3:00 Uhr die neue Zeit am selben Morgen haben möchte.

0 1 * * * root ntpdate -s 0.de.pool.ntp.org

Sash
21. Oktober 2015 um 0:46 Uhr

Habe dies ausprobiert, da ich FHEM laufen habe. Wenn die Zeit aus dem Ruder läuft, stimmen die logs nicht mehr und die daraus resultierenden Diagramme.
Was mir auffällt, wenn ich crontab mit sudo ausführe und ohne, werden zwei jobs angelegt. Es sind unterschiedliche dateien (siehe Kopfzeile von nano). Welche ist denn die nach einem reboor ausgeführt wird ?
Die unter sudo angelegt wurde oder die unter dem User angelegt wurde ?

Habe es heute gemerkt, dass nach einem Neustart de PI die Syncronisierung ausblieb !

greez@all
Sash

Bob
28. Oktober 2015 um 13:28 Uhr

Hi,

Umgebung:
Raspbian Jessie

Zeitsynchro: So wie Du hier beschreibst
Effekt: Leider keine Synchronisation nach reboot!

Warum?
Danke!

raspiuser
8. Dezember 2015 um 12:47 Uhr

Könnte daran liegen, daß unter Jessie @reboot in der crontab nicht akzeptiert wird.
Melde Dich als root an, erstelle den Crontab und mach einfach mal: env -i /var/spool/cron/crontab/root
Die darauf folgende Fehlermeldung sagt das bei mir jedenfalls aus.

Maik
16. Dezember 2015 um 7:08 Uhr

Vielen lieben dank,funktioniert super. Vielen vielen vielen dank!

FreeDee
25. März 2016 um 7:57 Uhr

Hallo,
bei mir erfolgt leider keine Synchronisation @reboot
In der Syslog steht „ntpdate[340]: no servers can be used, exiting“
Wo mus ich suchen?

klugscheißer
12. Oktober 2016 um 17:27 Uhr

ntpdate sollte nur beim booten einmal genutzt werden um die richtige zeit zu setzten, danach hällt sie der standard ntp dienst aktuell

Auerhahn
23. Oktober 2016 um 19:23 Uhr

Leider klappt das nicht. ntpdate bewirkt einfach absolut überhaupt nichts. Weder bei reboot, noch wenn man es einfach so von der Kommandozeile aufruft. Un dntp hält die Zeit auch nicht aktuell. Ich kann die Zeit auf dem Pi nur manuell einstellen. Das ist sehr seltsam.

LJ
18. Januar 2017 um 22:21 Uhr

Hallo, ich kenne mich 0 aus mit linux und hab mir mal aus spaß den raspberry pi

aber bei mir aktuallisiert die zeit irgend wie nicht obwohl alles so ist wie beschrieben zeit zone ect.

startet vlt dieses crontab „programm“ was man schreiben musste nicht automatisch ?? oder muss ich das programm irgendwie extra ausführen

bin um jede hilfe dankbar

Tubo
20. Mai 2017 um 11:44 Uhr

Habe soeben Raspbian mittels eines aktuellen Noobs 2.4 installiert. Die Uhr steht im Moment auf 10.April.2017 13.02 Uhr.
Die meisten Tipps aus dem Netz habe ich schon durch – nichts funzt. Im Prinzip ist es mir egal, welche Zeit in der Ecke steht, allerdings funtionieren viele Sachen nicht, weil Zertifikate noch nicht gültig sind.Zur Zeit ist der Raspi für mich absolut unbrauchbar.

PeterSchwan
24. Dezember 2017 um 7:13 Uhr

Also sudo apt-get install ntp und sudo apt-get purge ntpdate bei Problemen oder wie oder einfach beides Installiert haben?!?



Deine Meinung zählt