Základním prvkem udržujícím platný čas v centrále jsou
hardwarové hodiny, tzv. RTC. Toto zařízení pracuje nepřetržitě, jeho provoz zajišťuje "knoflíková" baterie. V RTC je uchováván
koordinovaný světový čas (UTC), což je prakticky čas platný na nultém poledníku Země (GMT). Při komunikaci s uživatelem (zobrazování nebo nastavování času) ale systém centrály
přepočítává tento čas podle nastavené uživatelské časové zóny.
V centrále jsou připravené časové zóny dvě: středoevropský čas (SEČ, bez letního posouvání) a čas "ČR" (středoevropský čas, který automaticky přechází na letní čas a zpět). Je možné přidat časovou zónu jinou. Soubory s definicí připravených zón jsou
/etc/localtime_SEC a
/etc/localtime_CR, platná je ta, na kterou odkazuje symlink
/etc/localtime, přednastavená je zóna ČR (s přechodem na letní čas). Platnou časovou zónu používají i časové moduly FREDa.
Má-li centrála funkční připojení do internetu, udržuje si přesný čas sama pomocí protokolu NTP a časových serverů. Vybrané časové servery (a další nastavení NTP) jsou v souboru
/etc/ntp.conf.
Nemá-li centrála přístup k časovému serveru, musí správný čas nastavovat správce centrály. Aktuální čas a datum centrály se zjistí příkazem
. Centrála odpoví výpisem typu
Thu Jan 16 10:11:53 CET 2014
. Nový čas a datum se nastaví příkazem "date MMDDhhmmRRRR", např. "10:30 hodin 16. ledna 2014" se zadá
. Tento nový čas se ale neukládá hned i do hardwarových hodin, uloží se tam až během několika minut. Bude-li centrála po zadání nového času aspoň 1/4 hodiny zapnutá, přepíše si nový čas do hardwarových hodin sama. Jinak je jistější ho tam přepsat příkazem
.
Poznámka pro zkoušení funkčnosti NTP:Podle dostupných informací neopravuje démon NTP za běhu časové chyby větší, než 1000 vteřin, protože časové skoky sem-tam jsou pro mnoho služeb nepřípustné. NTP je ale teď nastaven tak, aby velký časový rozdíl (časový skok) opravil alespoň při svém startu (tzn. i při startu celé centrály). Menší chyby opravuje démon NTP změnou rychlosti systémového časovače, kterou se čas postupně zpřesňuje. Ta změna rychlosti opraví 1 vteřinu chyby za 2000 vteřin provozu. Nečekejte tedy žádné časové kotrmelce.
Poznámka o udržování času bez přístupu na internet:Centrála, která nemá přístup na internet, si nemůže průběžně korigovat čas podle serveru NTP. V souvislosti s tím vznikají problémy s udržováním přesného času:
- Centrála už byla nějakou dobu (několik hodin) k internetu připojena:
Je-li centrála dostatečně dlouho připojena k serverům NTP, uloží si démon NTP aktuální korekční hodnotu času do souboru a použije ji po příštím startu systému. To je za normálních okolností dobře, protože systém ihned po startu správným směrem dorovnává čas. V centrále to ale může vadit. Nově zakoupená centrála pravděpodobně zcela přesně nastavené hodiny nemá. Uživatel ji pak třeba nejdřív doma (s přístupem k internetu) nějakou dobu testuje, zkouší projekt apod. a démon NTP si mezitím uloží potřebu korekce (počáteční) odchylky času. Pak uživatel přemístí centrálu mimo přístup k internetu. Od té chvíle démon NTP nemá možnost opravit své nastavení, stále proto (oprávněně v dobré víře) používá uloženou velkou počáteční korekci a ta vyvolává poměrně velký nežádoucí posun času. - Systém za provozu používá softwarově udržovaný čas:
Při běžné práci s časem není dobré používat hardwarové hodiny. Operační systém si tedy udržuje čas softwarově. Ovšem dlouhodobá přesnost softwarových hodin bývá horší, než hodin hardwarových, po dlouhé době provozu může být nastřádaná odchylka dost veliká.
Ve snaze o co nejlepší přesnost času i v centrálách bez přístupu k internetu je (ve verzích od dubna 2017) při instalaci systému změřen programem adjtimex rozdíl softwarových a hardwarových hodin a příslušně se nastavují časové korekce sw hodin. Také je při každém startu centrály mazán korekční záznam démona NTP.