Hi,
nachdem die letzten Tage mal wieder hier und da ein paar Uhren flasch gingen, wurde mir wieder bewusst, dass ich die Situation mit Transpondertime schon lange nervig finde. Als leicht von korrekter Zeit besessener NTP-Fan ist mir auch nichts von dem genug, was bereits zirkuliert - ntpdate nur beim Booten oder bestenfalls über Cron halte ich für einen billigen Hack, wenn man doch den wahren Pille haben könnte - ntpd für die Dreambox wurde ja schon hier und da gesichtet. Beim letzten Versuch (Jahre her) fand ich dann aber nur Builds, die ntpd als glorifiziertes ntpdate benutzten - und auf der dm800 führte der Versuch eines echten ntpd-Betriebs in wenigen Minuten in die ferne Zukunft, so dass ich das Experiment erstmal gelassen habe.
Hier ist ein neuer Versuch: Aktuelles ISC NTP für OE2.0 mips32el, bisher ausschließlich getestet auf der 7020HD und dort auf den ersten Blick funktionabel. Es handelt sich um das Paket aus OpenEmbedded Core mit diversen Anpassungen für die Dreambox. Anbei drei Pakete:
- ntp enthält den Daemon, ein ntp.conf und den Startscript, der nach rcS.d geht, damit die Zeit vor dem Start von enigma2 steht.
- ntp-tickadj habe ich optional gemacht (Recommends statt Depends), wer damit experimentieren will (oder muss) kann es installieren, aber für den Anfang sollte das nicht nötig sein.
- ntp-bin sind die optionalen Utilities, die man zum Betrieb nicht dringend braucht, aber für den Timekeeping-Fan ist sowas wie ntpq -p natürlich unverzichtbar, um der Funktion der Software nachzugehen. Zum Testen unbedingt installieren, sonst ist man ja blind.
Um die Installation von ntp wirklich abzuschließen, muss man E2 noch abgewöhnen, die Transpondertime zu syncen: Erst E2 anhalten
und ein paar Sekunden warten, bis es wirklich weg ist (enigma2 aus der Ausgabe von ps ax verschwunden). Dann /etc/enigma2/settings editieren und um die Zeile
ergänzen (ACHTUNG, wenn man von ntp genug hat, dran denken das wieder zu entfernen). Dann zur Krönung die Maschine mit reboot durchstarten und sobald sie wieder erreichbar ist, mit ntpq -p mal gucken, ob sie wirklich tut was man erwartet. Dann bitte /etc/ntp.conf anpassen, wenn man bessere NTP-Server verfügbar hat als die aus dem Pool (etwa welche vom ISP, oder die eigene DCF77- oder GPS-Uhr).
A short blurb in something resembling the english language:
Lately some stations have managed to broadcast completely wrong time bases on their DVB transponders and this didn't happen for the first time, nor will it be the last. I consider full NTP daemon operation as the one true solution, but so far this either was solved incompletely (ntpd as a glorified one-shot replacement for ntpdate) or cheaply (one-shot or at best cron triggered ntpdate). Real ntpd also failed on my previous box (DM800HD PVR) by letting the clock speed to 2016 within a couple of minutes, so there's something wrong with the 2.6.18 kernel on that platform. Anyway, with Kernel 3.2 on a 7020HD, it seemed a new test for ntpd fitness was in order.
So please find attached mips32el packages of ISC ntp (the daemon, ntp.conf and init script), ntp-bin (tools like ntpq needed to monitor ntpd's proper operation) and ntp-tickadj (necessary only in special cases) in a build inspired by the OE core one, but stripped off unnecessary stuff (like 99% of refclocks) and tuned for the Dreambox. After installing ntp, make sure to fix your /etc/ntp.conf, disable useTransponderTime in the E2 settings file (edit only after stopping E2!) and reboot to test the init script. You may also use /etc/init.d/ntp start to test it without reboot first, or if you ran into problems. To monitor the daemon, use ntpq -p on the box.
So, without much further ado, Happy Testing!
Thanks & HTH,
Andre.