NTP (Network Time Protocol) è un protocollo che sincronizza l'ora del tuo sistema con i server NTP online con una precisione di pochi millisecondi. NTP è in ascolto sulla porta UDP 123. In questo articolo, vedremo come sincronizzare l'ora utilizzando il server NTP in Ubuntu 18.04 e lo stesso dovrebbe funzionare anche su Ubuntu 16.04.
Sia l'ora di sistema che quella hardware possono allontanarsi a causa di piccole incongruenze nelle frequenze di clock. Con il passare del tempo, queste derive si accumulano portando a differenze temporali significative che possono causare problemi con strumenti come cron e "make" che esamina i timestamp sui file.
Come installare il server NTP
Per installare il server NTP sul tuo sistema Ubuntu, apri il tuo terminale ed esegui il comando seguente:
apt-get install ntp
Per verificare che l'installazione sia andata a buon fine, esegui
dpkg -l | grep "ntp"
Risultato
ii ntp 1:4.2.8p4+dfsg-3ubuntu5.8 amd64 Network Time Protocol daemon and utility programs
Successivamente, aggiorna il sistema utilizzando il comando seguente
apt-get update
Dopo un corretto aggiornamento del sistema, verifica se NTP è in esecuzione utilizzando il comando seguente
systemctl status ntp
Per verificare che NTP funzioni come dovrebbe eseguire il comando seguente
ntpq -p
Questo comando interroga e visualizza i pool di server NTP a cui è stato connesso ntpd.
Risultato
Come forzare un aggiornamento dell'orologio usando ntp
A volte, potresti imbatterti in un sistema senza un orologio in tempo reale con batteria tampone e la sincronizzazione dell'ora diventa un problema. In questo caso, potrebbe essere necessario forzare un aggiornamento dell'orologio in modo che l'ora del sistema sia sincronizzata senza ritardi. Invece di eseguire ntpdate
comando che è stato obsoleto, eseguire i comandi seguenti.
Innanzitutto, interrompi il servizio NTP
systemctl stop ntp
Esegui il comando seguente
ntpd -gq
Risultato
Il -gq
l'opzione dice al demone NTP di rettificare il tempo indipendentemente dallo skew (g) e di uscire (q) immediatamente.
Infine, avvia il servizio NTP
systemctl start ntp
Utilizzo di timedatectl e timesyncd
ntpdate è stato gradualmente eliminato nelle versioni precedenti di Ubuntu ea favore di timedatectl. Per controllare lo stato dell'ora eseguito
timedatectl
Risultato
root@ip-172-31-41-251:/home/ubuntu# timedatectl status
Local time: Mon 2018-04-09 18:59:18 UTC
Universal time: Mon 2018-04-09 18:59:18 UTC
RTC time: Mon 2018-04-09 18:59:17
Time zone: Etc/UTC (UTC, +0000)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: no
Il server dei nomi utilizzato per recuperare l'ora per timedatectl e timesyncd si trova in /etc/systemd/timesyncd.conf
Ulteriori file di configurazione possono essere trovati in /etc/systemd/timesynd.conf.d
Un altro metodo che puoi utilizzare per impostare immediatamente l'ora di sistema è usare sntp come mostrato di seguito.
sntp -s 24.56.178.140
L'indirizzo dopo il flag -s rappresenta un server NTP. Sentiti libero di utilizzare qualsiasi indirizzo del server NTP.
Infine, puoi anche ignorare la soglia di panico, che per impostazione predefinita è di 1000 secondi. Questo può essere fatto nei seguenti modi:
- modificare il
/etc/default/ntp
e assicurandoti che l'opzione -g sia presente. - modificare il
/etc/ntp.conf
e posizionandotinker panic 0
in alto
Quando sono state apportate modifiche ai file di configurazione , assicurati di ricaricare il servizio ntp.
systemctl restart ntp
Per ottenere maggiori informazioni sui time server NTP, visitare il sito NTP. In questo articolo, abbiamo visto come installare e sincronizzare l'ora utilizzando il server NTP nei sistemi Ubuntu per mantenere l'ora del sistema accurata. Grazie per il tuo tempo. Sentiti libero di provare i comandi e darci un feedback.