Prawidłowy czas systemowy w Linuxie jest znacznie ważniejszy, niż mogłoby się wydawać. Synchronizacja zegara wpływa nie tylko na poprawne wyświetlanie godziny, ale także na działanie:
- HTTPS i certyfikatów SSL,
- logów systemowych,
- baz danych,
- klastrów i serwerów,
- VPN,
- Docker i Kubernetes,
- cronów i automatyzacji,
- systemów monitoringu.
W Ubuntu synchronizacja czasu realizowana jest zwykle przez usługę systemd-timesyncd, która komunikuje się z serwerami czasu NTP.

W tym artykule pokażę:
- czym jest serwer czasu NTP,
- dlaczego warto synchronizować czas,
- jak włączyć synchronizację czasu w Ubuntu,
- jak sprawdzić status synchronizacji,
- jak ustawić własne serwery czasu NTP,
- jak zautomatyzować konfigurację z poziomu terminala.
Co to jest NTP?
NTP oznacza:
Network Time Protocol
Jest to protokół służący do synchronizacji czasu komputerów przez sieć.
Serwery NTP pobierają wzorcowy czas z:
- zegarów atomowych,
- odbiorników GPS,
- krajowych laboratoriów czasu,
- centrów synchronizacji czasu.
Następnie udostępniają go urządzeniom w Internecie i sieciach lokalnych.
Linux okresowo:
- odpyta serwer NTP,
- oblicza opóźnienia sieci,
- koryguje lokalny zegar systemowy.
Dlaczego synchronizacja czasu jest ważna?
Certyfikaty SSL i HTTPS
Niepoprawny czas systemowy często powoduje błędy:
- „Certificate expired”
- „Certificate not yet valid”
Nawet kilka minut różnicy może unieważnić certyfikaty TLS.
Logi systemowe
Jeśli czas jest błędny:
- logi będą miały złą kolejność,
- trudniej diagnozować awarie,
- monitoring może działać niepoprawnie.
Serwery i klastry
W systemach rozproszonych synchronizacja czasu jest krytyczna:
- Kubernetes,
- Ceph,
- PostgreSQL replication,
- Proxmox,
- Active Directory,
- LDAP.
Różnice czasu między hostami mogą powodować:
- błędy autoryzacji,
- problemy z replikacją,
- niestabilność klastra.
Jak sprawdzić status synchronizacji czasu?
Ubuntu posiada narzędzie:
timedatectl
Wyświetli ono:
- aktualną godzinę,
- strefę czasową,
- status synchronizacji NTP.
Przykładowy wynik:
System clock synchronized: yes
NTP service: active
Jak włączyć synchronizację czasu NTP?
W Ubuntu można to zrobić jedną komendą:
sudo timedatectl set-ntp true
Po chwili system uruchomi usługę synchronizacji czasu.
Jak sprawdzić, czy synchronizacja działa?
Użyj:
timedatectl status
lub krócej:
timedatectl
Szukaj:
System clock synchronized: yes
Jak wyłączyć synchronizację czasu?
sudo timedatectl set-ntp false
Jakie serwery NTP wykorzystuje Ubuntu?
Domyślnie Ubuntu korzysta zwykle z:
ntp.ubuntu.com- puli
pool.ntp.org
Aktualną konfigurację można sprawdzić:
cat /etc/systemd/timesyncd.conf
Jak ustawić własny serwer NTP?
Edytuj plik:
sudo nano /etc/systemd/timesyncd.conf
Przykład:
[Time]
NTP=time.google.com time.cloudflare.com
FallbackNTP=pool.ntp.org
Po zmianach zrestartuj usługę:
sudo systemctl restart systemd-timesyncd
Popularne publiczne serwery NTP
time.google.com
Cloudflare
time.cloudflare.com
NTP Pool Project
pool.ntp.org
Jak sprawdzić dokładność synchronizacji?
Przydatne polecenie:
timedatectl timesync-status
Wyświetla między innymi:
- aktualny serwer,
- offset czasu,
- jitter,
- dokładność synchronizacji.
Automatyzacja konfiguracji NTP
Poniższy skrypt:
- włącza synchronizację,
- ustawia serwery Google i Cloudflare,
- restartuje usługę,
- pokazuje status.
#!/bin/bash
sudo timedatectl set-ntp false
sudo tee /etc/systemd/timesyncd.conf > /dev/null <<EOF
[Time]
NTP=time.google.com time.cloudflare.com
FallbackNTP=pool.ntp.org
EOF
sudo systemctl restart systemd-timesyncd
sudo timedatectl set-ntp true
timedatectl status
Nadaj prawa wykonania:
chmod +x ntp-setup.sh
Uruchom:
./ntp-setup.sh
Synchronizacja czasu a BIOS/RTC
Linux korzysta z:
- zegara systemowego,
- RTC (Real Time Clock) w BIOS/UEFI.
Można zsynchronizować RTC z czasem systemowym:
sudo hwclock --systohc
To szczególnie przydatne:
- po wymianie baterii CMOS,
- w maszynach offline,
- przy dual-boot z Windows.
Czy warto używać chrony zamiast systemd-timesyncd?
W bardziej wymagających środowiskach często używa się:
chronyntpd
chrony oferuje:
- lepszą dokładność,
- szybszą synchronizację,
- lepsze działanie przy niestabilnym Internecie,
- obsługę serwerów czasu.
Instalacja:
sudo apt install chrony
Status:
chronyc tracking
Najczęstsze problemy z synchronizacją czasu
Brak synchronizacji
Sprawdź:
systemctl status systemd-timesyncd
Firewall blokuje UDP 123
NTP używa:
UDP/123
Zła strefa czasowa
Sprawdź:
timedatectl
Lista stref:
timedatectl list-timezones
Ustawienie:
sudo timedatectl set-timezone Europe/Warsaw
Podsumowanie
Synchronizacja czasu przez NTP to jedna z podstawowych funkcji każdego nowoczesnego systemu Linux.
W Ubuntu konfiguracja jest bardzo prosta i zwykle sprowadza się do jednej komendy:
sudo timedatectl set-ntp true
Warto pamiętać, że poprawny czas systemowy wpływa na:
- bezpieczeństwo,
- certyfikaty HTTPS,
- logi,
- działanie serwerów,
- automatyzację,
- stabilność usług sieciowych.
Dzięki systemd-timesyncd Ubuntu oferuje wygodny i lekki mechanizm synchronizacji czasu bez konieczności instalowania dodatkowego oprogramowania.