Sincronizzare l'orologio del PC con il protocollo NTP

Il protocollo NTP (Network Time Protocol) è stato creato per aggiornare e mantenere sincronizzati gli orologi dei computer di una rete. E' in grado di sincronizzare l'ora con un margine d'errore sull'ordine di pochissimi “millisecondi”.

Aggiornare l'ora sul nostro sistema GNU/Linux è relativamente semplice, basta accedere alla console come utente root, ed usare il comando ntpdate seguito dall'indirizzo di un server primario. In questo esempio sincronizzeremo il nostro PC con uno dei server primari dell'Istituto Elettrotecnico Galileo:

$ su
# ntpdate ntp1.ien.it

come risposta avremo quanti secondi di differenza aveva il nostro computer con il server primario (in questo esempio io ero addirittura avanti di 85 secondi!!!):

8 Sep 21:27:25 ntpdate[15969]: step time server 193.204.114.232 offset -85.812730 sec

Per sincronizzare poi l'orologio hardware (del BIOS) con quello di sistema, che abbiamo appena aggiornato, diamo come comando:

# hwclock --systohc

Metodo 1

Per mantenere aggiornato l'orologio del nostro sistema automaticamente, potremo configurare il demone ntpd, tramite il file di configurazione /etc/ntpd.conf. Aggiungiamo le seguenti righe al nostro file:

server ntp1.ien.it      # server primario
server ntp2.ien.it      # server primario

Salviamo il file e da console carichiamo il demone ntpd.

# sh /etc/rc.d/rc.ntpd start

Per avviare il demone ad ogni riavvio, diamogli i permessi di esecuzione:

# chmod +x /etc/rc.d/rc.ntpd

Metodo 2

In alternativa possiamo aggiungere alla fine del file /etc/rc.d/rc.local la riga :

/usr/sbin/ntpdate ntp1.ien.it
/sbin/hwclock --systohc

In questo modo ogni volta che avvieremo il nostro PC avremo l'ora sincronizzata.