Impostare l’ora su Debian GNU/Linux e tenerla sempre aggiornata
Introduzione
La mini-guida nasce per tutti coloro i quali hanno il sano e giusto desiderio di avere sempre l’ora corretta sulla propria macchina Debian anche quando ci sono passaggi dall’ora legale a quella solare e viceversa e rendere tutto ciò automatizzato senza dovere stare sempre lì ad aggiornare l’ora manualmente, bene possiamo iniziare.
Configurazione
Cominciamo installando da root il nostro client per impostare l’orario di sistema da server NTP, ossia il famoso ntpdate e per far ciò diamo :
apt-get install ntpdate
Terminata l’installazione , imposteremo i link ai nostri server NTP preferiti io consiglio di usare i server dell’Istituto Nazionale di Ricerca Metrologica ossia i server: ntp1.inrim.it ed ntp2.inrim.it, ma se non siete maniaci dell’ora precisa al millisecondo potete anche lasciare i server NTP impostati di default in Debian. Se volessimo modificare i server settati di default sempre da root, basta dare:
gedit /etc/default/ntpdate
e sostituire la stringa NTPSERVERS=”0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org” con quella che contiene i nostri server preferiti e quindi con NTPSERVERS=”ntp1.inrim.it ntp2.inrim.it” e sostituite anche la stringa NTPDATE_USE_NTP_CONF=yes con NTPDATE_USE_NTP_CONF=””, dopo aver eseguito la modifica salvate e chiudete; per rendere effettiva tale modifica basterà eseguire sempre da root il comando:
ntpdate-debian
Ma in questo modo non abbiamo automatizzato nulla, abbiamo semplicemente settato l’ora del nostro sistema provvisoriamente e se dovesse esserci uno dei tanti famosi passaggi ora legale→ora solare e viceversa? Dovremmo sempre stare lì a dare da root ntpdate-debian beh non è comodo, allora automatizziamo il tutto.
Automatizzazione
Per automatizzare il tutto ci vengono in aiuto i file crontab che consentono la pianificazione di comandi, ovvero consentono di registrarli presso il sistema per essere poi mandati in esecuzione periodicamente. I file crontab contengono la lista dei job e altre istruzioni per il demone di cron. Bene, allora editiamo il nostro file crontab sempre da root con il seguente comando:
crontab -e
ed al termine di tutte le stringhe di commento (tutte le stringhe che iniziano con #) aggiungiamo la stringa:
-Soluzione 1-
@reboot ntpdate-debian
salviamo e chiudiamo il tutto. Quello che abbiamo detto di fare a cron non è altro che questo: ad ogni riavvio lancia ntpdate-debian, ovviamente ntpdate-debian usa i server impostati in /etc/default/ntpdate. Beh la domanda sorge spontanea…e se io lo volessi aggiornare per esigenze personali con un altra frequenza oppure ad un ora prestabilita? Se volessimo aggiornare ad ogni ora possiamo sostituire ad esempio @reboot con @hourly, ad ogni settimana sostituiremo invece @weekly e così via…
-Soluzione 2-
Se invece dovessimo avere delle esigenze particolari e dover aggiornare l’ora ad esempio alle ore 12 di ogni giorno al posto di aggiungere in crontab @reboot ntpdate-debian aggiungeremo:
0 12 * * * ntpdate-debian
Si pone un altro quesito ovvio: E se io alle 12 avessi la mia macchina Debian spenta? Niente paura ci aiuta anacron, così quando accendiamo il pc anacron eseguirà tutto quello che cron non ha eseguito quando il pc era spento, quindi recupererà il lavoro non svolto da cron e per fare tutto ciò basta semplicemente installare anacron ovviamente sempre da root così:
apt-get install anacron
Conclusioni
Seguendo passo passo questa semplice guida avremmo sempre, un sistema Debian GNU/Linux con l’ora esatta corretta.
Per la stesura di questa guida ringrazio il mio carissimo amico David Paleino grande Debian Developer 😉