Oct 122010
 

ntp linuxIl protocollo NTP ovvero il Network Time Protocol consente di sincronizzare l’orologio interno di un sistema attraverso uno o più time server che forniscono liberamente il servizio su Internet. NTP fornisce la data in formato Coordinated Universal Time (UTC).

In questo modo la data del sistema può sempre ritenersi affidabile e può ad esempio essere ridistribuita ai client di una rete locale.

NTPDATE

ntpdate è un programma informatico utilizzato per sincronizzare e impostare la data dai computer utilizzando i Network Time Protocol Server (NTP).

La precisione e l’affidabilità di ntpdate dipende dal numero di server, il numero di sondaggi utilizzati ogni volta che viene eseguito e l’intervallo tra le esecuzioni.


Compito 1 : Aggiornare l’orario di sistema

ntpdate ntp.ubuntu.com pool.ntp.org

Questo comando aggionerà l’orario del vostro sistema (bisogna essere root).

Output:

laptop:~# ntpdate ntp.ubuntu.com pool.ntp.org
11 Oct 22:59:09 ntpdate[12628]: adjust time server 91.189.94.4 offset 0.023347 sec

Compito 2 : Verificare la raggiungibilità di un server

ntpdate -d ntp1.inrim.it
Con l’opzione -d (debug) si efefttua un test di raggiungibilità del server ntpd e della sincronizzazione.

Output:

laptop:~# ntpdate -d ntp1.inrim.it
11 Oct 23:52:07 ntpdate[15798]: ntpdate [email protected] Fri Aug 6 22:49:55 UTC 2010 (1)
Looking for host ntp1.inrim.it and service ntp
host found : ntp1.inrim.it
transmit(193.204.114.232)
receive(193.204.114.232)
transmit(193.204.114.232)
transmit(193.204.114.232)
receive(193.204.114.232)
transmit(193.204.114.232)
transmit(193.204.114.232)
server 193.204.114.232, port 123
stratum 1, precision -18, leap 00, trust 000
refid [CTD], delay 0.06894, dispersion 24.00008
transmitted 4, in filter 4
reference time: d05e057c.f022abbe Mon, Oct 11 2010 23:51:56.938
originate timestamp: d05e0588.eb4fd0e9 Mon, Oct 11 2010 23:52:08.919
transmit timestamp: d05e0588.e929dc72 Mon, Oct 11 2010 23:52:08.910
filter delay: 0.06953 0.00000 0.06894 0.00000
0.00000 0.00000 0.00000 0.00000
filter offset: 0.029989 0.000000 0.030154 0.000000
0.000000 0.000000 0.000000 0.000000
delay 0.06894, dispersion 24.00008
offset 0.030154

11 Oct 23:52:09 ntpdate[15798]: adjust time server 193.204.114.232 offset 0.030154 sec

NTPD

Il demone ntp (ntpd) 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 log inconsistenti. Il costo di questo è un leggero uso di processore e memoria, ma trascurabili per un server moderno.

Configurazione

Il demone ntpd utilizza (usualmente) come file di configurazione /etc/ntp.conf.

Installando il pacchetto sotto Ubuntu con aptitude install ntp si avrà una configurazione già funzionante ed il demone verra fatto partire alla fine dell’installazione.

Qualche spiegazione sulla configurazione:

# You do need to talk to an NTP server or two (or three).
server ntp.ubuntu.com

La direttiva server indica il/i server ntp a cui accedere per avere un aggiornamento sull’orario, in azienda chiedete ai vostri responsabili delle reti, usualmente router o altri apparati di rete sono utilizzati come ntp server.

driftfile /var/lib/ntp/ntp.drift
Con la direttiva driftfile si può specificare un file per memorizzare la correzione di frequenza applicata all’orologio locale per metterlo in passo con l’UTC in modo da rendere più veloce il processo di sincronizzazione a seguito di un riavvio del demone ntpd.
Se questo file viene definito, il demone ntpd utilizzerà come correzione iniziale di frequenza il valore trovato all’interno del file, altrimenti utilizzerà il valore 0.

Alcuni utili comandi

Compito 3: verificare che ntpd sia funzionante

ntpq -p
Verifica se il demone Network Time Protocol sta funzionando correttamente.

Output:
laptop:~# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*europium.canoni 193.79.237.14 2 u 50 64 377 71.416 28.190 22.704

Se compare il simbolo * a sinistra di un indirizzo, vuol dire che l’ora viene presa dal relativo server, se non c’e’ alcun * significa che al momento non siamo allineati con alcun server.

NTPDATE or NTP ?

ntpdate può essere eseguito manualmente, se necessario, per impostare l’orologio di sistema, oppure può essere eseguito da lo script di avvio di startup per impostare l’orologio al momento del boot. Questo è utile in alcuni casi, per impostare l’orologio prima di iniziare il primo demone NTP ntpd . E ‘anche possibile eseguire ntpdate da un cron script. Tuttavia, è importante notare che ntpdate con un cron script abbinato non può sostituire il demone NTP, che utilizza sofisticati algoritmi per ottimizzare l’accuratezza e l’affidabilità, riducendo al minimo l’uso delle risorse. Infine, poiché ntpdate non disciplina la frequenza di clock di sistema come fa ntpd , la precisione utilizzando ntpdate è limitata .

HWCLOCK

Hwclock è un programma che gira sotto linux e configura o interroga l’ Hardware Clock, che è spesso chiamato anche Real Time Clock, RTC, o CMOS clock. Questo è il programma che la maggior parte dei sistemi Linux utilizza in fase di boot per prendere l’orario dal Hardware Clock e configurare l’orologio di sistema in fase di boot.

Compito 4: Interrogare l’hardware clock

hwclock -r

Questo comando mostra a schermo l’attuale orario salvato nell’hardware clock

Output:
laptop:~# hwclock -r
Tue 12 Oct 2010 12:19:18 AM CEST -0.348773 seconds

Compito 5: Aggiusta sia l’orologio di sistema che l’hardware clock

ntpdate pool.ntp.org && hwclock --systohc && hwclock --adjust

Con questa sequenza aggiorniamo prima l’orologio di sistema con ntpdate e poi con hwclock –systohc aggiorniamo l’hardware clock

Output
laptop:~# ntpdate pool.ntp.org && hwclock --systohc && hwclock --adjust
12 Oct 00:25:23 ntpdate[17183]: adjust time server 70.86.250.6 offset 0.068321 sec

Per maggiori informazioni: http://ntp.org/

Popular Posts:

Flattr this!

  2 Responses to “Gestione dell’orologio su Linux”

  1. Hi,

    NTPD usually is used on systems, that run 7×24, and are used as source to synchronize other systems. When you do not want to synchronize other systems, OpenNTPD is a very good alternative, because it could easily be configured NOT to listen on port 123. For systems that do not run 7×24, chronyd is a very good alternative, cause it can correct great differences between the time of your local system and a pool of NTP servers, than NTPD can.

  2. Having accurate time on computers is a important to security. A few of my Windows machines over the years have had suck bad time management that I ended up running an NTP server on a Linux machine so those MS-Windows machines could be constantly corrected. Here’s how I did it: http://blog.jdpfu.com/2010/01/16/solved-clock-time-loss-under-windows7-and-vista (non-commercial blog).

Leave a Reply to gb Cancel reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(required)

(required)

*