OVH Cloud OVH Cloud

Où se configure le serveur ntp à consulter sur une Debian Squeeze « de base » etc. ?

37 réponses
Avatar
Francois Lafont
Bonjour à tous,

J'installe une Debian Squeeze « de base » sur une machine. Composants
installés (via une installation en mode expert) : "SSH server" et
"Standard system utilities" et c'est tout. Rien d'autre.

Durant l'installation, on m'a demandé de choisir un serveur NTP. J'avais
laissé le choix par défaut, à savoir 0.debian.pool.ntp.org ce qui était
très bien et je finis mon installation parfaitement. Tout va bien.

Mais finalement, après coup, je me dis « zut, ce que je voulais c'est
mettre comme serveur ntp "mon-ntp.mon-domain.priv" » parce que c'est un
ntp local du coup c'est mieux. Et là, une fois l'installation terminée
et la machine rebootée, sur ma console je cherche où changer ce
paramètre et là je ne trouve rien :


root@server:~# dpkg -l | grep -i ntp # rien
root@xen-server:~# find /etc -type f \
-exec grep -EHni '0.debian.pool.ntp.org' {} \;
root@xen-server:~# find /var -type f \
-exec grep -EHni '0.debian.pool.ntp.org' {} \;
/var/log/installer/cdebconf/templates.dat:13599:Default:
0.debian.pool.ntp.org
/var/log/installer/cdebconf/questions.dat:718:Value: 0.debian.pool.ntp.org
root@xen-server:~#

Donc, juste deux occurrences de "0.debian.pool.ntp.org" dans des logs et
c'est tout. Aucun paquet "ntp*" installé. Alors du coup, j'ai quelques
questions :

1) Lors de l'installation, le choix du serveur ntp ne serait-il pas au
bout du compte ponctuel uniquement ? Je veux dire par là que ma Debian
au moment de l'installation a bien réglé son heure sur
0.debian.pool.ntp.org mais ensuite le système (une Debian de base donc)
ne cherchera plus jamais à synchroniser son heure avec
0.debian.pool.ntp.org (ou avec qui que ce soit d'autre d'ailleurs) ? Je
me pose cette question car au niveau ntp rien ne semble installé sur le
système.

2) Ou bien je me trompe et en réalité ma Debian va bien régulièrement se
synchroniser sur 0.debian.pool.ntp.org mais alors dans ce cas où peut-on
modifier le choix du serveur ntp à consulter ?

En admettant que ça soit le cas 1) qui se produise alors je veux que ma
machine se mette à jour (au niveau de l'horloge) régulièrement. Du coup,
je veux installer un client ntp. Donc je pense au paquet "ntpdate" car
je vois dans sa description :

ntpdate: client for setting system time from NTP servers

Bien sûr, il y a le paquet "ntp" aussi mais lui fait client et serveur
ntp (si j'ai bien compris) or personnellement seul le client m'intéresse
ici. Si je jette un œil sur la page man de ntpdate, je vois que la
synchronisation avec les serveurs spécifiés dans "/etc/default/ntpdate"
se fait au boot uniquement (en fait il semble que ce soit plus
précisément au moment de l'activation des interfaces réseau). Le souci
c'est que la machine est un serveur qui est censé booter plutôt rarement
et donc je voudrais que la synchronisation se fasse régulièrement même
s'il n'y a pas de redémarrage. Du coup, je pense à faire une tâche cron
mais je peux lire dans la page man de ntpade :

« It is also possible to run ntpdate from a cron script. However, it is
important to note that ntpdate with contrived cron scripts is no
substitute for the NTP daemon, which uses sophisticated algorithms to
maximize accuracy and reliability while minimizing resource use.
Finally, since ntpdate does not discipline the host clock frequency as
does ntpd, the accuracy using ntpdate is limited. »

Bref, la page man m'incite plutôt à installer le paquet ntp. D'où ma
dernière question :

3) Est-ce vraiment nécessaire d'installer le paquet ntp dans mon cas (ie
ma machine a juste besoin d'un client ntp à faire fonctionner
régulièrement) ? Personnellement une précision du temps à la seconde
près me convient tout à fait (personnellement que le temps du serveur
soit exact à la nano seconde près m'importe peu). Est-ce qu'une tâche
cron peut faire l'affaire avec mon nptdate (voire ntpdate-debian) ou
bien je suis vraiment « en dehors des clous » et il faut vraiment que
j'installe le paquet ntp. Bref, c'est quoi les bonnes pratiques dans ce
domaine ?

Merci d'avance pour votre aide.

--
François Lafont

7 réponses

1 2 3 4
Avatar
Francois Lafont
Le 30/10/2012 10:35, Lucas Levrel a écrit :

Tu as une ligne à chaque « heure 17 minutes ». Tu devrais en avoir une
en double au moment du changement d'heure, non ?



Ah peut-être. C'est bizarre, la seule ligne « :17: » en double que j'ai
se situe le 28 octobre à 2h17, ie en principe avant le changement
d'heure qui s'opère à 3h00 du matin il me semble. On peut la voir
justement dans l'extrait de mon message précédent.

--
François Lafont
Avatar
Frederic Dupas
Dans <508f2bf5$0$6138$,
Francois Lafont a écrit :

Et bien je suis un peu déçu. Voici le résultat de mon test. Voici la fin
de mon fichier /var/log/syslog.2.gz (après un zcat) :

----------------------------------------------------------------------
Oct 28 00:17:02 grosquick CRON[20541]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)
Oct 28 01:17:01 grosquick CRON[20553]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)
Oct 28 02:17:01 grosquick CRON[20564]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)



Le changement d'heure s'est fait ici entre les 2 "02:17:01".
Petit rappel : le changement d'heure s'effectue à 3h00 qui redevient 2h00
quand il s'agit d'ajouter une heure dans la nuit.

Oct 28 02:17:01 grosquick CRON[20896]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)
Oct 28 02:55:00 grosquick logger: 1. Test du changement d'heure...
Oct 28 02:56:00 grosquick logger: 2. Test du changement d'heure...



Ce logger a été lancé trop tard pour voir le changement d'heure.
Lors du second "02:55:00" après le changement d'heure.

On dirait que tout se passe comme s'il n'y avait pas eu de changement
d'heure lors de l'écriture de ce fichier. Du coup, dans le syslog, je ne
sais pas au niveau de quelle ligne le changement d'heure a-t-il été
effectué.



Voir plus haut.

L'extrait ci-dessus est la fin du fichier /var/log/syslog.2.gz
et ensuite le contenu se trouve dans /var/log/syslog.1 puis dans
/var/log/syslog.

Je soupçonne le système d'avoir changé de fichier syslog au moment où il
décidé de changer l'affichage de l'heure dans syslog, mais c'est juste
une intuition...



Le changement de fichier syslog n'a rien perdu comme information.

--
Frédéric
Bleu,e adj. et n. m. Qui est d'une couleur voisine du rouge, mais pas très : un
ciel bleu, des yeux bleus, les flots bleus [..]. Fig. Bouch. : un steak bleu ;
s'emploie pour désigner un steak rouge. (Pierre Desproges : D.S.U.é (et des BN))
Avatar
Frederic Dupas
Dans <508fa4bf$0$1984$,
Francois Lafont a écrit :
Le 30/10/2012 10:35, Lucas Levrel a écrit :

Tu as une ligne à chaque « heure 17 minutes ». Tu devrais en avoir une
en double au moment du changement d'heure, non ?



Ah peut-être. C'est bizarre, la seule ligne « :17: » en double que j'ai
se situe le 28 octobre à 2h17, ie en principe avant le changement
d'heure qui s'opère à 3h00 du matin il me semble. On peut la voir
justement dans l'extrait de mon message précédent.



Voir ma réponse à l'autre message.

À 3h00, il est de nouveau 2h00. Plus précisement, on passe de 2h59m,59s
à 2h00mn00s

Il est donc logique d'avoir 2 fois 02:17 dans le log.
Et ensuite, on a 03:17 plus bas dans le log.

--
Frédéric
Bleu,e adj. et n. m. Qui est d'une couleur voisine du rouge, mais pas très : un
ciel bleu, des yeux bleus, les flots bleus [..]. Fig. Bouch. : un steak bleu ;
s'emploie pour désigner un steak rouge. (Pierre Desproges : D.S.U.é (et des BN))
Avatar
Francois Lafont
Merci Frédéric pour tes explications.

Le 30/10/2012 10:59, Frederic Dupas a écrit :
Dans <508f2bf5$0$6138$,
Francois Lafont a écrit :

Et bien je suis un peu déçu. Voici le résultat de mon test. Voici la fin
de mon fichier /var/log/syslog.2.gz (après un zcat) :

----------------------------------------------------------------------
Oct 28 00:17:02 grosquick CRON[20541]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)
Oct 28 01:17:01 grosquick CRON[20553]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)
Oct 28 02:17:01 grosquick CRON[20564]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)



Le changement d'heure s'est fait ici entre les 2 "02:17:01".
Petit rappel : le changement d'heure s'effectue à 3h00 qui redevient 2h00
quand il s'agit d'ajouter une heure dans la nuit.



Ok.

Oct 28 02:17:01 grosquick CRON[20896]: (root) CMD ( cd / && run-parts
--report /etc/cron.hourly)
Oct 28 02:55:00 grosquick logger: 1. Test du changement d'heure...
Oct 28 02:56:00 grosquick logger: 2. Test du changement d'heure...



Ce logger a été lancé trop tard pour voir le changement d'heure.
Lors du second "02:55:00" après le changement d'heure.



Et zut. :-)

Pourtant, j'ai fait, *avant* le moment du changement d'heure (plus
précisément *avant* qu'il soit 2h55 en ancienne heure) :

$ at 02:55 10/28/12
...

Et du coup, l'ordinateur m'a exécuté mon mini programme à 2h55 de la
nouvelle heure alors que je voulais qu'il l'exécute à 2h55 de l'ancienne
heure.

Du coup, qu'aurait-il fallu indiquer pour qu'il exécute mon « at » à
2h55 de l'ancienne heure ?

--
François Lafont
Avatar
erwan
Francois Lafont écrivait :

Le 30/10/2012 10:35, Lucas Levrel a écrit :

Tu as une ligne à chaque « heure 17 minutes ». Tu devrais en avoir une
en double au moment du changement d'heure, non ?



Ah peut-être. C'est bizarre, la seule ligne « :17: » en double que j'ai
se situe le 28 octobre à 2h17, ie en principe avant le changement
d'heure qui s'opère à 3h00 du matin il me semble. On peut la voir
justement dans l'extrait de mon message précédent.



Non, tu as celle de 2h17 heure d'été, puis une heure plus tard celle de
2h17 heure d'hiver.

Le changement d'heure a eu lieu entre les deux.

--
Le travail n'est pas une bonne chose. Si ça l'était,
les riches l'auraient accaparé
Avatar
Frederic Dupas
Dans <508fa97c$0$6453$,
Francois Lafont a écrit :

Et zut. :-)

Pourtant, j'ai fait, *avant* le moment du changement d'heure (plus
précisément *avant* qu'il soit 2h55 en ancienne heure) :

$ at 02:55 10/28/12
...

Et du coup, l'ordinateur m'a exécuté mon mini programme à 2h55 de la
nouvelle heure alors que je voulais qu'il l'exécute à 2h55 de l'ancienne
heure.

Du coup, qu'aurait-il fallu indiquer pour qu'il exécute mon « at » à
2h55 de l'ancienne heure ?




un moyen de contourner est d'utiliser :
at now + <temps en minutes> minutes
en calculant ce temps sans se tromper.

Je n'ai pas trouvé d'infos indiquant comment at calcule l'heure
d'exécution lors d'un changement d'heure.
J'ai essayé d'exprimer la date en UTC pour la commande at, mais le UTC
semble être ignoré !

--
Frédéric
Bleu,e adj. et n. m. Qui est d'une couleur voisine du rouge, mais pas très : un
ciel bleu, des yeux bleus, les flots bleus [..]. Fig. Bouch. : un steak bleu ;
s'emploie pour désigner un steak rouge. (Pierre Desproges : D.S.U.é (et des BN))
Avatar
Francois Lafont
Le 30/10/2012 12:30, Frederic Dupas a écrit :

Pourtant, j'ai fait, *avant* le moment du changement d'heure (plus
précisément *avant* qu'il soit 2h55 en ancienne heure) :

$ at 02:55 10/28/12
...

Et du coup, l'ordinateur m'a exécuté mon mini programme à 2h55 de la
nouvelle heure alors que je voulais qu'il l'exécute à 2h55 de l'ancienne
heure.

Du coup, qu'aurait-il fallu indiquer pour qu'il exécute mon « at » à
2h55 de l'ancienne heure ?




un moyen de contourner est d'utiliser :
at now + <temps en minutes> minutes
en calculant ce temps sans se tromper.



Mais oui, j'aurais dû y penser.

Je n'ai pas trouvé d'infos indiquant comment at calcule l'heure
d'exécution lors d'un changement d'heure.
J'ai essayé d'exprimer la date en UTC pour la commande at, mais le UTC
semble être ignoré !



Ok.

Merci pour ces précisions. Bon, je me suis fait avoir par « at » sur ce
coup là. On verra au prochain changement d'heure, si j'y pense. :-)

Merci pour ton aide.
À+

--
François Lafont
1 2 3 4