Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati


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:

  • Accedere al centro di controllo, Data e ora.

    • Ubuntu 20.04 LTS:

      1. Fare clic sul fuso orario attualmente impostato per fare apparire la mappa di selezione.

      2. Fare clic nella mappa sulla città più vicina, oppure cercare la città sul campo di ricerca.
        Fare clic su Chiudi.

  • In alternativa è possibile compiere la medesima operazione tramite terminale, digitare il seguente comando:

    sudo dpkg-reconfigure tzdata

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:

  • Accedere al centro di controllo, Data e ora.

    • Ubuntu 20.04 LTS:

      1. Attivare opzione Data e ora automatiche.
        Fare clic su Chiudi.

    • Ubuntu 18.04 LTS e precedenti:

      1. Nella sezione Configurazione, selezionare l'opzione Mantenere sincronizzato con i server Internet.
        Fare clic su Chiudi.

  • In alternativa:
    1. Con i privilegi di amministrazione e un editor di testo, creare un file chiamato /etc/cron.daily/ntpdate con il seguente contenuto:

      ntpdate -s ntp.ubuntu.com
    2. Assicurarsi che il file ha i permessi di esecuzione, digitare in terminale il seguente comando:

      sudo chmod 755 /etc/cron.daily/ntpdate

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:

  • Accedere al centro di controllo, Data e ora.

    • Ubuntu 18.04 LTS e precedenti:

      1. Fare clic su Seleziona server.

      2. Fare clic sulla casella di fianco al server oppure aggiungerne manualmente inserendoli nella casella posta di fianco ad Aggiungi.
        Fare clic su Chiudi.

  • In alternativa, tramite terminale, con i privilegi di amministrazione e un editor di testo:

    1. Modificare il file /etc/cron.daily/ntpdate nel modo seguente:

      ntpdate ntp.ubuntu.com pool.ntp.org
    2. Modificare il file /etc/ntp.conf nel modo seguente:

      server ntp.ubuntu.com
      server pool.ntp.org

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:

  • Digitare in terminale il seguente comando:

    sudo ntpdate ntp.server.name

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:

  • Creare un file denominato 'WindowsTimeFixUTC.reg' con il seguente contenuto

    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
         "RealTimeIsUniversal"=dword:00000001
  • Infine, fare fare doppio clic su di esso per unire il suo contenuto con quello del registro.

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

  • Digitare in una finestra di terminale il seguente comando:

    ntpq --numeric --peers
  • Il risultato sarà simile al seguente:

         remote           refid      st t when poll reach   delay   offset  jitter
    ==============================================================================
    +193.204.114.232 .CTD.            1 u   45  256  377   28.715   27.826   9.547
    *193.204.114.233 .CTD.            1 u  167  256  377   28.116   39.034  15.276

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