- 1 1. Úvod: Proč je synchronizace času důležitá
- 2 2. Co je ntpd? Jeho role a alternativy na Ubuntu
- 3 3. Instalace a počáteční konfigurace ntpd na Ubuntu
- 4 4. Konfigurace a přizpůsobení NTP serverů
- 5 5. Ověření provozu a řešení problémů s ntpd
- 6 6. Porovnání ntpd s jinými nástroji pro synchronizaci času
- 7 7. Často kladené otázky (FAQ)
- 8 8. Závěr: Zlepšení spolehlivosti systému prostřednictvím stabilní synchronizace času
1. Úvod: Proč je synchronizace času důležitá
Problémy způsobené posunem systémového času
Na systémech Linux, jako je Ubuntu, je udržování přesného systémového času klíčové. Na první pohled se malý rozdíl v hodinách může zdát triviální, ale v provozu serverů a prostředích aplikací může i malý posun času vést k vážným problémům.
Například mohou nastat následující problémy:
- Ztráta konzistence logů Pokud jsou časové značky v systémových nebo aplikačních logech nesouladné, je obtížné identifikovat kořen problému incidentů.
- Poruchy cron úloh Plánované úlohy, jako jsou zálohy nebo dávkové úlohy, nemusí běžet v správný čas, což způsobí neočekávané chování.
- Selhání SSL certifikátů a autentizace bezpečnosti Komunikace HTTPS a autentizace SSH závisí na přesném systémovém čase. Pokud je hodina nesprávná, certifikáty mohou být posouzeny jako „vypršelé“ nebo „ještě neplatné“, což vede k chybám připojení.
Tyto problémy se stávají obzvláště vážnými, když musí být více serverů synchronizováno přes síť.
Role a důležitost NTP
Aby se takovým problémům zabránilo, používá se NTP (Network Time Protocol). NTP komunikuje s časovými servery přes internet nebo lokální síť a automaticky opravuje systémovou hodinu.
Na Ubuntu je k dispozici několik nástrojů souvisejících s NTP, včetně ntpd, chrony a systemd-timesyncd. V tomto článku se zaměříme na ntpd (Network Time Protocol daemon) a podrobně vysvětlíme, jak ho nainstalovat a používat na Ubuntu.
Pro servery, které běží nepřetržitě po dlouhou dobu, nebo systémy, kde je konzistence logů nezbytná, je ntpd vysoce ceněn pro svou stabilitu.
V následující sekci začneme vysvětlením, co je ntpd, jeho jádro role a dostupné možnosti na Ubuntu.
2. Co je ntpd? Jeho role a alternativy na Ubuntu
Přehled a funkce ntpd
ntpd (Network Time Protocol Daemon) je služba na pozadí, která udržuje systémový čas přesný pomocí NTP. Periodicky komunikuje s NTP servery na internetu nebo lokální síti a automaticky upravuje systémovou hodinu.
Klíčovou funkcí ntpd je jeho schopnost provádět „hladkou synchronizaci“, postupně opravující posun času místo náhlých změn. Tento design zabraňuje negativním dopadům na běžící systémy a aplikace.
ntpd také podporuje pokročilé funkce NTP, jako je symetrická komunikace a autentizace, což ho činí vhodným pro podniková prostředí.
Nástroje pro synchronizaci času dostupné na Ubuntu
Ubuntu poskytuje několik možností pro synchronizaci času:
- ntpd (balíček ntp) Široce používaný v dlouhodobých operacích a prostředích vyžadujících podrobnou konfiguraci. Nabízí vysokou flexibilitu a stabilitu a může se přesně synchronizovat s veřejnými NTP servery.
- chrony Moderní alternativa k ntpd s vysokou přesností a velmi rychlou počáteční synchronizací. Dobře funguje na systémech s nízkými specifikacemi a virtuálních strojích a mnoho distribucí ho nyní používá jako výchozí.
- systemd-timesyncd Lehká služba pro synchronizaci času, která je ve výchozím nastavení povolena na Ubuntu 20.04 a novějších. Je jednoduchá a pohodlná, ale omezená ve funkcích a nevhodná pro pokročilé konfigurace nebo provozování lokálního NTP serveru.
Proč zvolit ntpd?
Hlavním důvodem volby ntpd na Ubuntu je jeho spolehlivost a stabilita. Je obzvláště vhodný v následujících scénářích:
- Servery běžící nepřetržitě po dlouhou dobu, kde je přesnost času kritická
- Prostředí, která vyžadují vybudování lokálního NTP serveru v síti
- Podnikové případy použití vyžadující autentizaci a jemnou kontrolu
Protože ntpd má dlouhou historii provozu a širokou kompatibilitu, nabízí klid při nasazení.
3. Instalace a počáteční konfigurace ntpd na Ubuntu
Instalace ntpd
Pro použití ntpd na Ubuntu musíte nejprve nainstalovat balíček ntp. To lze snadno provést následujícími příkazy:
.
sudo apt update
sudo apt install ntp
Tento balíček nainstaluje ntpd a související soubory. V závislosti na verzi Ubuntu může být ve výchozím nastavení povolen chrony nebo systemd-timesyncd. V takových případech se doporučuje je předem zakázat nebo odstranit.
sudo systemctl stop systemd-timesyncd
sudo systemctl disable systemd-timesyncd
Povolení služby a ověření spuštění
Po instalaci povolte službu ntpd a ověřte, že běží:
sudo systemctl enable ntp
sudo systemctl start ntp
sudo systemctl status ntp
Pokud stav ukazuje active (running), ntpd funguje správně.
Kontrola a úprava výchozího konfiguračního souboru
Konfigurace ntpd je definována v /etc/ntp.conf. Ve výchozím nastavení je nakonfigurováno několik NTP serverů (obvykle ze sítě pool.ntp.org).
Nejprve si prohlédněte konfigurační soubor:
cat /etc/ntp.conf
Pokud chcete zadat servery umístěné v Japonsku, můžete konfiguraci upravit následovně:
server ntp.nict.jp iburst
Volba iburst zvyšuje rychlost synchronizace během počátečního připojení a je doporučována.
Po provedení změn restartujte ntpd, aby se aplikovaly:
sudo systemctl restart ntp
Ověření automatické synchronizace času
ntpd automaticky synchronizuje čas po spuštění. Pro ověření správné funkce použijte následující příkaz:
ntpq -p
Tento příkaz zobrazí seznam připojených NTP serverů spolu se zpožděním, offsetem a dalšími podrobnými informacemi.
4. Konfigurace a přizpůsobení NTP serverů
Výběr doporučených NTP serverů
Jedním z nejdůležitějších aspektů konfigurace ntpd je výběr, se kterými NTP servery se chcete synchronizovat. Při připojení přes internet může specifikace spolehlivých NTP serverů geograficky blízko – například domácích serverů – poskytnout stabilnější a přesnější synchronizaci času.
Reprezentativní NTP servery v Japonsku zahrnují:
ntp.nict.jp(Národní institut pro informační a komunikační technologie)ntp.jst.mfeed.ad.jp(JST / Mfeed)ntp.ring.gr.jp(Internet Multi Feed)
Tyto servery jsou provozovány na základě vysoce přesných atomových hodin a mohou být použity pro osobní účely bez zvláštní registrace.
Synchronizaci s těmito servery můžete nastavit přidáním následujících položek do /etc/ntp.conf:
server ntp.nict.jp iburst
server ntp.jst.mfeed.ad.jp iburst
server ntp.ring.gr.jp iburst
Podrobné konfigurační možnosti v ntp.conf
Soubor /etc/ntp.conf umožňuje jemnější kontrolu než jen zadání NTP serverů. Níže jsou uvedeny některé často používané direktivy.
- restrict directive Řídí, kteří klienti mají povolený nebo omezený přístup k NTP službě. Z bezpečnostních důvodů by měl být omezen zbytečný přístup. Příklad: povolení přístupu z lokální sítě.
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap
- driftfile Určuje soubor, ve kterém se zaznamenává drift systémového hodin. Ve většině případů je výchozí nastavení dostačující.
driftfile /var/lib/ntp/ntp.drift

Vytvoření lokálního NTP serveru v síti
Pomocí ntpd na Ubuntu můžete také provozovat systém jako lokální NTP server, který distribuuje čas ostatním zařízením v interní síti. Tato konfigurace je užitečná v prostředích bez přístupu k internetu nebo kde je vyžadována konzistentní správa času napříč více systémy.
Příklad postupu nastavení je následující:
- Přidejte pravidlo
restrictdo/etc/ntp.confpro povolení lokálního přístupu:restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap - Nakonfigurujte klientské počítače, aby odkazovaly na lokální NTP server:
server 192.168.0.10 iburst # Lokální IP NTP serveru - Povolení NTP portu na serveru (povolte UDP port 123 ve firewallu):
sudo ufw allow 123/udp
Pokud je komunikace blokována, synchronizace času selže a příkaz ntpq neukáže spojení se serverem.
5. Ověření provozu a řešení problémů s ntpd
Kontrola stavu služby
Chcete-li ověřit, zda ntpd běží správně, použijte následující příkaz:
sudo systemctl status ntp
Pokud je zobrazeno active (running), ntpd funguje normálně. Pokud je stav inactive nebo failed, chyba v konfiguraci nebo problém se závislostmi může bránit spuštění.
Pro podrobné logy je následující příkaz užitečný:
journalctl -u ntp
To vám umožní prohlédnout historii spuštění a chybové zprávy pro službu ntpd v chronologickém pořadí.
Kontrola stavu synchronizace (ntpq -p)
Příkaz ntpq -p se nejčastěji používá k ověření, zda se ntpd správně synchronizuje s NTP servery.
ntpq -p
Příklad výstupu:
remote refid st t when poll reach delay offset jitter
==============================================================================
*ntp.nict.jp .NICT. 1 u 25 64 377 1.123 -0.345 0.024
Význam každého sloupce je následující:
remote: Název připojeného NTP serverust: Stratum serveru (nižší je přesnější; 1 označuje referenci atomového hodin)reach: Registr dosažitelnosti (8bitová historie)delay: Síťové zpoždění (ms)offset: Časové posunutí (ms)jitter: Variace posunutí
Server označený * je aktuálně vybrán jako zdroj synchronizace.
Běžné chyby a jejich řešení
Níže jsou uvedeny běžné problémy při nasazování ntpd a jejich odpovídající řešení.
1. Žádný výstup z ntpq -p / reach zůstává 0
- Příčina : UDP port 123 může být blokován firewallem nebo routerem
- Řešení : Ověřte nastavení firewallu na serveru i klientovi, aby byl povolen NTP provoz.
sudo ufw allow 123/udp
2. Je zobrazeno System clock not synchronized
- Příčina : ntpd neběží, nebo je v konfliktu jiná služba synchronizace (např. systemd-timesyncd)
- Řešení : Vypněte nepotřebné služby synchronizace času a restartujte ntpd.
sudo systemctl disable systemd-timesyncd sudo systemctl restart ntp
3. Selhání rozlišení názvů NTP serverů
- Příčina : Problémy s konfigurací DNS nebo síťové problémy
- Řešení : Zkontrolujte rozlišení názvů pomocí příkazů jako
ping ntp.nict.jpa upravte nastavení DNS, pokud je to nutné.
4. Čas je výrazně nesprávný a nesynchronizuje se
- Příčina : Z bezpečnostních důvodů ntpd automaticky neopravuje velmi velká časová posunutí
- Řešení : Ručně opravte počáteční čas, poté restartujte ntpd.
sudo ntpd -gq # Perform a one-time immediate synchronization sudo systemctl restart ntp
Pro kontinuální monitorování
V produkčních prostředích se doporučuje periodicky logovat výstup ntpq -p a nastavit upozornění na anomálie. Detekce znaků, jako jsou chybějící logy nebo hodnota reach trvale uvízlá na 0, umožňuje včasné identifikování selhání.
6. Porovnání ntpd s jinými nástroji pro synchronizaci času
Hlavní nástroje pro synchronizaci času na Ubuntu
Ubuntu nabízí více nástrojů pro synchronizaci času, každý s odlišnými charakteristikami. Výběr správného nástroje závisí na požadavcích systému a použití.
- ntpd (ntp package)
- chrony
- systemd-timesyncd
Charakteristiky ntpd
- Výhody
- Prokázaná stabilita a spolehlivost podložená dlouhou historií provozu
- Bohaté množství funkcí s podrobnými možnostmi konfigurace (lokální NTP servery, autentizace, symetrický mód)
- Vysoká kompatibilita s veřejnými NTP servery a rozsáhlé zdroje pro řešení problémů
- Nevýhody
- Počáteční synchronizace po spuštění může být pomalá
- Méně adaptabilní na moderní prostředí, jako je virtualizace a vysoce variabilní sítě
Charakteristiky chrony
- Výhody
- Velmi rychlá počáteční synchronizace, dokonce ihned po spuštění
- Vysoká přesnost ve virtualizovaných nebo proměnlivých síťových prostředích (laptopy, VPN)
- Adaptivní učení zlepšuje přesnost v průběhu času, někdy překonává ntpd
- Nevýhody
- O něco složitější konfigurace při použití jako lokální NTP server
- Méně dokumentace a méně reálných příkladů ve srovnání s ntpd
Charakteristiky systemd-timesyncd
- Výhody
- Povoleno ve výchozím nastavení na Ubuntu 20.04 a novějších, extrémně snadné na správu
- Minimální spotřeba zdrojů se základní funkcionalitou synchronizace
- Dobře integrováno se systemd a vhodné pro standardní nastavení Ubuntu
- Nevýhody
- Omezené funkce; pokročilá konfigurace a provoz lokálního NTP serveru nejsou podporovány
- Základní přesnost a možnosti logování, což ji činí nevhodnou pro velké systémy
Srovnávací tabulka
| Feature | ntpd | chrony | systemd-timesyncd |
|---|---|---|---|
| Accuracy | High | Very High | Moderate |
| Initial Sync Speed | Sometimes Slow | Very Fast | Moderate |
| Local NTP Server | Excellent | Good (More Complex) | Not Supported |
| Configuration Flexibility | High | Medium | Low |
| Virtual Environment Support | Limited | Excellent | Good |
| Operational History & Resources | Excellent | Good | Limited |
| Recommended Use Cases | Servers, Organization-wide Sync | Virtual Environments, Laptops | Single PCs, Beginners |
Doporučené nástroje podle použití
- Prostředí serverů (zejména systémy stále zapnuté) → ntpd nebo chrony pro stabilitu a přesnost.
- Cloudová prostředí, virtuální stroje, laptopy → chrony nabízí největší flexibilitu a přesnost.
- Jednotlivé PC se základními potřebami synchronizace → systemd-timesyncd je dostatečný.
7. Často kladené otázky (FAQ)
Q1. Je ntpd nainstalován ve výchozím nastavení na Ubuntu 22.04?
A1.
Ne. Na Ubuntu 22.04 není ntpd nainstalován ve výchozím nastavení. Místo toho je povolen systemd-timesyncd pro základní synchronizaci času. Pro použití ntpd musíte explicitně nainstalovat balíček ntp.
sudo apt install ntp
Po instalaci deaktivace systemd-timesyncd pomáhá vyhnout se konfliktům.
Q2. Proč ntpq -p nezobrazuje žádné výsledky?
A2.
Několik možných příčin:
- Služba neběží : Zkontrolujte pomocí
sudo systemctl status ntpa spusťte ji, pokud je to nutné - Žádná komunikace s NTP servery : Ujistěte se, že UDP port 123 není blokován firewallem
- Chyby konfigurace : Ověřte, že
/etc/ntp.confneobsahuje chyby
Začněte spuštěním následujícího příkazu pro kontrolu základního provozu:
ntpq -p
Pokud je výstup prázdný nebo reach zůstává 0, pravděpodobně selhává komunikace s externím serverem.
Q3. Mám zvolit ntpd nebo chrony?
A3.
Optimální volba závisí na vašem prostředí:
- Dlouhodobě běžící fyzické servery nebo nastavení lokálního NTP serveru →
ntpdje doporučen pro stabilitu - Virtuální prostředí, laptopy nebo proměnlivé sítě (Wi-Fi) →
chronyposkytuje lepší přesnost a rychlejší synchronizaci - Pouze jednoduchá synchronizace času →
systemd-timesyncdje dostatečný
Q4. Co dělá příkaz ntpd -gq?
A4.
ntpd -gq provede jednorázovou synchronizaci s NTP serverem a poté ukončí.
-g: Umožňuje korekci i při velkém časovém posunu-q: Synchronizuje jednou a ukončí (neběží jako démon)
Tento příkaz je užitečný, když je systémový čas významně nesprávný a normální provoz ntpd ho automaticky nenapraví.
Q5. Je výhodou specifikovat více NTP serverů?
A5.
Ano. Specifikace více NTP serverů zlepšuje redundanci a spolehlivost. Pokud jeden server není dostupný, systém může pokračovat v synchronizaci s ostatními.
Příklad konfigurace v /etc/ntp.conf:
server ntp.nict.jp iburst
server ntp.jst.mfeed.ad.jp iburst
server ntp.ring.gr.jp iburst
8. Závěr: Zlepšení spolehlivosti systému prostřednictvím stabilní synchronizace času
Opětovné zhodnocení hodnoty ntpd
Na systémech Ubuntu není přesná synchronizace času pouze pohodlností – přímo ovlivňuje bezpečnost, řešení problémů, správu logů a správnost automatizovaných procesů.
Tento článek poskytl komplexní přehled základů NTP, jak funguje synchronizace času s ntpd, kroky instalace a konfigurace, možnosti přizpůsobení, metody ověření a řešení problémů a srovnání s alternativními nástroji.
Rada pro čtenáře
Výběr nástroje pro synchronizaci času na Ubuntu závisí na účelu systému, architektuře a požadavcích na dostupnost.
Nicméně princip zůstává univerzální: bez přesného času je stabilní provoz systému nemožný.
- Serverová prostředí a systémy s intenzivním logováním → Pečlivě nakonfigurujte
ntpdnebochrony - Jednotlivé systémy s jednoduchými požadavky → Použijte
systemd-timesyncdpro rychlé nastavení
I když problémy se synchronizací času jsou často nepovšimnuty v každodenních operacích, stávají se kritickým diferenciátorem při řešení incidentů.
Použijte tento průvodce k vytvoření nastavení synchronizace času, které nejlépe vyhovuje vašemu prostředí Ubuntu.


