Guida verificata con Ubuntu: 20.04

Problemi in questa pagina? Segnalali in questa discussione

Introduzione

Questa pagina fornisce informazioni utili riguardo al modo attraverso in cui Ubuntu gestisce l'orario impostando la sincronizzazione tramite il protocollo NTP (Network Time Protocol).

Installazione

Installare il pacchetto ntp.

Cambiare il fuso orario

Per cambiare il fuso orario:

Sincronizzare il tempo con NTP

Questa sezione descrive i metodi per mantenere l'ora esatta del proprio computer, utile per i server, ma non necessario (o desiderabile) per computer desktop.

NTP è un protocollo TCP/IP per sincronizzare l'ora attraverso la rete: un client richiede l'ora corrente a un server e usa questa per impostare il proprio orologio.

Oltre questa semplice descrizione, c'è molta complessità. Esistono diversi livelli di server NTP, con i server di primo livello collegati a orologi atomici (solitamente via GPS) e i server dei livelli due e tre che dividono il carico delle richieste attraverso Internet. Inoltre, il software dei client è molto più complesso di quanto si possa immaginare: deve gestire i ritardi nella comunicazione e regolare l'ora in modo da non compromettere tutti i processi in esecuzione sul server. Fortunatamente tutta quella complessità è nascosta all'utente.

Per sincronizzare il tempo attraverso il protocollo NTP:

Ubuntu dispone di ntpdate e viene eseguito all'avvio per configurare l'orologio in base al server NTP di Ubuntu. L'orologio di un server potrebbe comunque cambiare tra un riavvio e l'altro, anche di un fattore considerevole, ed è pertanto consigliato occasionalmente regolare l'ora manualmente. Il metodo più semplice per fare questo è quello di indicare a cron di eseguire ntpdate ogni giorno.

Modifica dei server NTP

In via predefinita, il sistema utilizzerà i server NTP di Ubuntu ntp.ubuntu.com. Si potrebbe volere utilizzare un server geograficamente più vicino al fine di migliorare la precisione.

In Italia server NTP vengono offerti dall'Istituto Nazionale di Ricerca Metrologica (INRIM) ai seguenti indirizzi: ntp1.inrim.it e ntp2.inrim.it. Si consiglia di aggiungere il seguente it.pool.ntp.org per i motivi specificati nel proseguo di questa guida.

Per modificare il server NTP:

Si noti l'indirizzo pool.ntp.org negli esempi precedenti. Questo indirizzo utilizza un DNS round-robin per restituire un server NTP da un pool di server in modo da distribuire il carico tra più server.
Ancora meglio sarebbe utilizzare un pool specifico per una determinata zona geografica. Ad esempio, in Italia si potrebbe utilizzare it.pool.ntp.org invece di pool.ntp.org.

Verificare server NTP

Per verificare il funzionamento di un server NTP:

Qualora funzioni, restituirà un output simile al seguente

 1 Feb 15:06:56 ntpdate[3799]: the NTP socket is in use, exiting

Problematiche dei sistemi dual boot

I sistemi operativi memorizzano e recuperano il tempo dall'orologio hardware posto sulla scheda madre in modo che possa tenere traccia del tempo anche quando il sistema non è alimentato.

Molti sistemi operativi (Linux/Unix/Mac), memorizzano l'ora hardware come UTC in via predefinita; altri, ad esempio i sistemi operativi Microsoft Windows, memorizzano il tempo locale. L'utilizzo di metodi di memorizzazione differenti, provoca dei problemi nei sistemi dual boot.

Il vantaggio di avere un orologio hardware in UTC è che non c'è bisogno di modificarlo nel cambio di fuso orario o quando entra in vigore l'ora legale. Modificare le impostazioni di un sistema operativo Linux al fine di usare l'ora locale è molto più semplice che modificare Windows per utilizzare l'UTC.

A partire da Ubuntu 8.10 l'UTC è attivo in via predefinita.

Usare l'orario UTC su Windows

Il seguente metodo è supportato da Windows Vista SP2, WIndows 7 e Windows Server 2008 R2.

Per fare il modo che Windows utilizzi l'orario UTC:

Utilizzare l'ora locale su Linux

Per fare il modo che Linux utilizzi l'ora locale:

Risoluzione dei problemi

Qual'è il file di configurazione in uso?

ntp utilizza il file '/etc/ntp.conf.'. Se il file '/etc/ntp.conf.dhcp' esiste, allora il servizio NTP presume che si stia utilizzando DHCP per ridefinire le impostazioni di NTP e quindi userà quest'ultimo file.

Qualora si voglia configurare NTP per utilizzare il DHCP può essere utile la pagina man:

man dhcp.conf

Il proprio client deve essere configurato per i server NTP in dotazione. Per fare questo, è necessario modificare il file / etc/dhcp3/dhclient.conf.

Consultare le pagine man per ulteriori dettagli:

man dhclient.conf
man dhcp-options

NTP è in esecuzione?

Di seguito sono elencati i comandi da terminale per avviare, monitorare e gestire il servizio.

Comando

Funzione

systemctl status systemd-timesyncd.service

Verifica esecuzione.

sudo systemctl start systemd-timesyncd.service

Avvia il servizio.

sudo systemctl restart systemd-timesyncd.service

Riavvia il servizio.

sudo systemctl stop systemd-timesyncd.service

Arresta il servizio.

sudo systemctl enable systemd-timesyncd.service

Abilita il servizio all'avvio del sistema.

sudo systemctl disable systemd-timesyncd.service

Disabilita il servizio dall'avvio del sistema.

Quali server sono in uso?

Di seguito sono elencati i comandi da terminale.

Comando

Funzione

grep ^server /etc/ntp.conf

Verifica server.

grep ^server /etc/ntp.conf.dhcp

Verifica server NTP con dhcp differente.

Questo server può essere risolto?

Se il seguente comando fallisce

host nome_server

potrebbero esserci problemi di DNS che è necessario correggere.

nome_server rappresenta il nome di un server elencato nel file di configurazione.

Questi server possono essere raggiunti?

Se il seguente comando fallisce

ntptrace nome_server

potrebbero esserci problemi di routing che è necessario correggere.

nome_server rappresenta il nome di un server elencato nel file di configurazione.

NTP utilizza la porta UDP 123, assicurarsi che i pacchetti siano correttamente indirizzati attraverso il gateway, se necessario.

Interrogare NTP

Il ritardo (delay) è espresso in millisecondi. Dovrebbe essere minore di 1 per i server della rete locale, minore di 10 per i server connessi ad internet tramite collegamento DSL e minore di 100 per le reti wireless.

La deviazione (offset) è espressa in millisecondi. E' l'ipotesi migliore corrente della differenza di tempo tra il proprio sistema e il server.

Jitter è una stima dell'errore della frequenza di clock locale. Se il valore è costantemente elevato allora il sistema potrebbe non essere allineato.

Perché NTP tenta il ripristino o fallisce?

NTP tenta di correggere l'orologio locale per mantenere il tempo esatto. Se l'orologio locale si allontana in maniera troppo veloce (di solito per problemi hardware o blocchi IRQ) allora NTP tenta di ripristinare il proprio orologio oppure si arresta. Risolvere il problema affinché NTP si comporti correttamente.

Ulteriori risorse


CategoryAmministrazione CategoryServer

Server/SincronizzazioneTempoNtp (l'ultima modifica è del 23/11/2023 02.17.44, fatta da jeremie2)