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.
Ubuntu ha due metodi per impostare automaticamente l'orologio: ntpdate e ntpd.
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. Con i privilegi di root e un editor di testo, creare un file chiamato /etc/cron.daily/ntpdate
con il seguente contenuto:
ntpdate -s ntp.ubuntu.com
Il file /etc/cron.daily/ntpdate
deve essere eseguibile.
sudo chmod 755 /etc/cron.daily/ntpdate
ntpdate è uno strumento abbastanza semplice, può regolare l'ora una sola volta al giorno in un'unica modifica, mentre il demone di ntp (ntpd) è molto più raffinato. Calcola lo spostamento dell'orologio del proprio sistema e lo regola continuamente, così non ci sono mai grandi modifiche che possono portare a file di registro inconsistenti. Il costo di questo è un leggero uso di processore e memoria, ma trascurabili per un server moderno.
To install ntpd, from a terminal prompt enter:
sudo apt-get install ntp
In both cases above, your system will use Ubuntu's NTP server at ntp.ubuntu.com by default. This is OK, but you might
want to use several servers to increase accuracy and resilience, and you may want to use time servers that are geographically closer
to you. to do this for ntpdate, change the contents of /etc/cron.daily/ntpdate
to:
ntpdate -s ntp.ubuntu.com pool.ntp.org
And for ntpd edit /etc/ntp.conf
to include additional server lines:
server ntp.ubuntu.com server pool.ntp.org
You may notice pool.ntp.org in the examples above. This is a really good idea which uses round-robin DNS to return an NTP server from a pool, spreading the load between several different servers. Even better, they have pools for different regions - for instance, if you are in New Zealand, so you could use nz.pool.ntp.org instead of pool.ntp.org. Look at http://www.pool.ntp.org/ for more details.
You can also Google for NTP servers in your region, and add these to your configuration. To test that a server works, just type:
sudo ntpdate ntp.server.name
See the Ubuntu Time wiki page for more information.