Kako sinkronizirati vrijeme s NTP-om u Linuxu


Network Time Protocol (NTP) je protokol koji se koristi za automatsku sinkronizaciju sata računalnog sustava preko mreže. Stroj može imati da sistemski sat koristi koordinirano univerzalno vrijeme (UTC), a ne lokalno vrijeme.

Održavanje točnog vremena na Linux sustavima, posebno poslužiteljima, važan je zadatak iz mnogih razloga. Na primjer, u umreženom okruženju potrebno je točno mjerenje vremena za točne vremenske oznake u paketima i sistemskim zapisnicima za analizu uzroka, utvrđivanje kada su se problemi pojavili i pronalaženje korelacija.

Chrony je sada zadani NTP paket za implementaciju na najnovijim verzijama Linux operativnih sustava kao što su CentOS, RHEL, Fedora i Ubuntu/Debian, među ostalima, a unaprijed je instaliran prema zadanim postavkama. Paket se sastoji od chronyda, demona koji se izvodi u korisničkom prostoru i chronyc programa naredbenog retka za praćenje i kontrolu chronyda.

Chrony je svestrana NTP implementacija i dobro se izvodi u širokom rasponu uvjeta (pogledajte usporedbu chrony paketa s ostalim NTP implementacijama). Može se koristiti za sinkronizaciju sistemskog sata s NTP poslužiteljima (ponašati se kao klijent), s referentnim satom (npr. GPS prijamnikom) ili s ručnim unosom vremena. Također se može upotrijebiti kao NTPv4 (RFC 5905) poslužitelj ili vršnjak za pružanje vremenske usluge drugim računalima u mreži.

U ovom ćete članku naučiti kako sinkronizirati vrijeme poslužitelja s NTP-om u Linuxu koristeći chrony.

Instaliranje Chronyja na Linux poslužitelj

U većini Linux sustava naredba chrony nije instalirana prema zadanim postavkama. Da biste ga instalirali, izvršite naredbu u nastavku.

$ sudo apt-get install chrony    [On Debian/Ubuntu]
$ sudo yum  install chrony       [On CentOS/RHEL]
$ sudo dnf install chrony        [On Fedora 22+]

Nakon završetka instalacije pokrenite uslugu chrony i omogućite joj automatsko pokretanje pri pokretanju sustava, a zatim provjerite radi li i radi.

# systemctl enable --now chronyd
# systemctl status chronyd

Da biste provjerili radi li chrony sada dobro i radi li broj poslužitelja i vršnjaka koji su na njega povezani, pokrenite sljedeću naredbu chronyc.

# chronyc activity

Provjera sinkronizacije kronika

Da biste prikazali informacije (popis dostupnih poslužitelja, status i odstupanja od lokalnog sata i izvora) o trenutnim izvorima vremena kojima Chronyd pristupa, pokrenite sljedeću naredbu s oznakom -v koji prikazuje opis za svaki stupac.

# chronyc sources
OR
# chronyc sources -v

Što se tiče prethodne naredbe, za prikaz drugih korisnih informacija za svaki od izvora koje trenutno ispituje chronyd (poput brzine zanošenja i postupka procjene pomaka), upotrijebite naredbu sourcestats.

# chronyc sourcestats
OR
# chronyc sourcestats -v

Da biste provjerili kronično praćenje, pokrenite sljedeću naredbu.

# chronyc tracking

U izlazu ove naredbe, referentni ID navodi ime (ili IP adresu), ako je dostupno, poslužitelja s kojim je računalo trenutno sinkronizirano, od svih dostupnih poslužitelja.

Konfiguriranje hroničnih izvora vremena

Glavna konfiguracijska datoteka chrony nalazi se na /etc/chrony.conf (CentOS/RHEL/Fedora) ili /etc/chrony/chrony.conf (Ubuntu/Debian).

Kada instalirate Linux OS u oblak, vaš bi sustav trebao imati neke zadane poslužitelje ili skup poslužitelja dodanih tijekom postupka instalacije. Da biste dodali ili promijenili zadane poslužitelje, otvorite datoteku konfiguracije za uređivanje:

# vim /etc/chrony.conf
OR
# vim /etc/chrony/chrony.conf

Možete dodati nekoliko poslužitelja koristeći direktivu poslužitelja kako je prikazano.

server 0.europe.pool.ntp.org iburst
server 1.europe.pool.ntp.org iburst
server 2.europe.pool.ntp.org ibusrt
server 3.europe.pool.ntp.org ibusrt

ili je u većini slučajeva najbolje koristiti ntppool.org za pronalaženje NTP poslužitelja. To omogućuje sustavu da pokuša pronaći najbliže dostupne poslužitelje za vas. Da biste dodali spremište, upotrijebite direktivu o spremištu:

pool 0.pool.ntp.org burst

Postoje mnoge druge opcije koje možete konfigurirati u datoteci. Nakon izmjena, ponovo pokrenite uslugu chrony.

$ sudo systemctl restart chrony		
OR
# systemctl restart chronyd

Da biste prikazali informacije o trenutnim izvorima vremena koje chronyd traži, pokrenite sljedeću naredbu još jednom.

# chronyc sources

Da biste provjerili status kroničnog praćenja, pokrenite sljedeću naredbu.

# chronyc tracking

Da biste prikazali trenutno vrijeme na vašem sustavu, provjerite je li sistemski sat sinkroniziran i je li NTP zaista aktivan, pokrenite naredbu timedatectl:

# timedatectl

To nas dovodi do kraja ovog vodiča. Ako imate pitanja, kontaktirajte nas putem odjeljka za komentare u nastavku. Za više informacija pogledajte: pomoću chronyja za konfiguriranje NTP-a sa službenog bloga Ubuntu-a.