Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

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

10 réponses

1 2 3 4
Avatar
Fabien LE LEZ
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 :



Sur ma Debian stable, j'ai bien un fichier /etc/ntp.conf qui contient
server 0.debian.pool.ntp.org iburst
server 1.debian.pool.ntp.org iburst
server 2.debian.pool.ntp.org iburst
server 3.debian.pool.ntp.org iburst

1) Lors de l'installation, le choix du serveur ntp ne serait-il pas au
bout du compte ponctuel uniquement ?



J'ai l'impression que c'est le cas, si tu n'as pas voulu de ntp (ce
qui est probablement un cas rare en 2012.)

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



La grosse différence entre ntp et ntpdate est ailleurs.

Ntpdate est très brutal : au moment où tu le lances, il modifie la
date du système. Si ça se trouve, il va retarder l'horloge d'une
seconde (voire plus), et tu risques de te retrouver avec des
événements dans le désordre, dans les logs, les bases de données, etc.
(Par exemple, un élément daté 13:35:20 peut être antérieur à un
élément daté 13:35:19.)

Ntp est un vrai système de synchronisation. Il fait de son mieux pour
éviter les modifications brutales. Comme il tourne tout le temps, il
peut régler l'horloge petit à petit. Par ailleurs, il sait détecter la
vitesse de l'horloge du PC, et en déduire l'heure réelle.
Avatar
Francois Lafont
Le 18/10/2012 02:11, Fabien LE LEZ a écrit :

Sur ma Debian stable, j'ai bien un fichier /etc/ntp.conf qui contient
server 0.debian.pool.ntp.org iburst
server 1.debian.pool.ntp.org iburst
server 2.debian.pool.ntp.org iburst
server 3.debian.pool.ntp.org iburst



Ok, mais tu dois avoir le paquet ntp installé sur ton système ce qui
n'est pas mon cas.

1) Lors de l'installation, le choix du serveur ntp ne serait-il pas au
bout du compte ponctuel uniquement ?



J'ai l'impression que c'est le cas, si tu n'as pas voulu de ntp (ce
qui est probablement un cas rare en 2012.)



Ok, je vois. :-)

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



La grosse différence entre ntp et ntpdate est ailleurs.

Ntpdate est très brutal : au moment où tu le lances, il modifie la
date du système. Si ça se trouve, il va retarder l'horloge d'une
seconde (voire plus), et tu risques de te retrouver avec des
événements dans le désordre, dans les logs, les bases de données, etc.
(Par exemple, un élément daté 13:35:20 peut être antérieur à un
élément daté 13:35:19.)

Ntp est un vrai système de synchronisation. Il fait de son mieux pour
éviter les modifications brutales. Comme il tourne tout le temps, il
peut régler l'horloge petit à petit.



Ok, je vois. Bon, ntpdate a l'air brutal en effet mais seulement si
l'écart constaté est plus grand que 0.5 seconde, sinon il est doux :

« Time adjustments are made by ntpdate in one of two ways. If ntpdate
determines the clock is in error more than 0.5 second it will simply
step the time by calling the system settimeofday() routine. If the error
is less than 0.5 seconds, it will slew the time by calling the system
adjtime() routine. The latter technique is less disruptive and more
accurate when the error is small, and works quite well when ntpdate is
run by cron every hour or two. »

Bon, ceci étant, je ne vais pas faire mon marginal et j'installerai le
paquet ntp. Simplement je regarderai la conf pour désactiver la partie
serveur et ne garder que la partie client.

Par ailleurs, il sait détecter la
vitesse de l'horloge du PC, et en déduire l'heure réelle.



Je n'ai pas compris ça. C'est possible d'avoir des petites explications.
Pour moi, le daemon ntpd déduit l'heure « réelle » à partir des serveurs
ntp qu'on lui a indiqués comme référence dans /etc/ntp.conf. Je ne vois
pas trop ce que « l'horloge du PC » vient faire là dedans (d'ailleurs je
ne vois pas trop ce que c'est « l'horloge du PC ») ?

En tout cas, merci pour ton message Fabien car manifestement je n'allais
pas vraiment dans la bonne direction.

--
François Lafont
Avatar
Fabien LE LEZ
On Thu, 18 Oct 2012 02:39:47 +0200, Francois Lafont
:

Par ailleurs, il sait détecter la
vitesse de l'horloge du PC, et en déduire l'heure réelle.





Le système utilise une horloge locale, relativement peu précise.
Imaginons que cette horloge, sur ton PC, aille 1 % trop vite.

Supposons qu'à 13:00 (heure réelle), ntpdate met ton PC à l'heure
juste. Dix minutes plus tard, ton PC indiquera 13:10:06 (1 % d'erreur
= 606 secondes au lieu de 600).

Supposons maintenant qu'au lieu de ntpdate, tu utilises ntp, et qu'à
la même heure, il a interrogé le serveur. Puisque ntp sait que
l'horloge local va 1 % trop vite, il a corrigé le tir au fur et à
mesure ; à 13:10, ton PC indiquera bien 13:10, même si aucune autre
requête vers le serveur n'a été effectuée entre-temps.
Avatar
Francois Lafont
Le 18/10/2012 03:08, Fabien LE LEZ a écrit :

Par ailleurs, il sait détecter la
vitesse de l'horloge du PC, et en déduire l'heure réelle.





Le système utilise une horloge locale, relativement peu précise.
Imaginons que cette horloge, sur ton PC, aille 1 % trop vite.

Supposons qu'à 13:00 (heure réelle), ntpdate met ton PC à l'heure
juste. Dix minutes plus tard, ton PC indiquera 13:10:06 (1 % d'erreur
= 606 secondes au lieu de 600).

Supposons maintenant qu'au lieu de ntpdate, tu utilises ntp, et qu'à
la même heure, il a interrogé le serveur. Puisque ntp sait que
l'horloge local va 1 % trop vite, il a corrigé le tir au fur et à
mesure ; à 13:10, ton PC indiquera bien 13:10, même si aucune autre
requête vers le serveur n'a été effectuée entre-temps.



Merci beaucoup, c'est limpide.

J'espère que l'exemple du « 1% trop vite » est purement didactique parce
que 6 secondes d'avance toutes les 10 minutes sur un ordinateur, ça fait
peur. :-)

Merci encore.
À+

--
François Lafont
Avatar
Sergio
Le Thu, 18 Oct 2012 03:08:00 +0200, Fabien LE LEZ a écrit :

Par ailleurs, il sait détecter la vitesse de l'horloge du PC, et en
déduire l'heure réelle.





Le système utilise une horloge locale, relativement peu précise.
Imaginons que cette horloge, sur ton PC, aille 1 % trop vite.



Ça existe encore des horloges "peu précises" sur les PC ?

Supposons qu'à 13:00 (heure réelle), ntpdate met ton PC à l'heure juste.
Dix minutes plus tard, ton PC indiquera 13:10:06 (1 % d'erreur = 606
secondes au lieu de 600).



Supposons, cas plus probable, que la pile CMOS est en HS, le PC démarre à
une heure fantaisiste. Il vaut mieux un changement "brutal".

Une Ubuntu (pas testé avec d'autres distributions) réagit bien à ce genre
de problème : Elle met la date à jour dès qu'il y a réseau, de plus, s'il
n'y a pas de réseau, elle se débrouille pour mettre à l'heure "du dernier
arrêt" (je suppose qu'elle se base sur un fichier log).

Un W** est loin de réagir comme ça...
Avatar
moi-meme
Le Thu, 18 Oct 2012 01:35:39 +0200, Francois Lafont a écrit :

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 :



chez moi j'ai un /etc/ntp.conf avec :
# pool.ntp.org maps to about 1000 low-stratum NTP servers. Your server
will
# pick a different set every time it starts up. Please consider joining
the
# pool: <http://www.pool.ntp.org/join.html>


et un S02ntp dans /et/rc2.d donc ntg est appelé au démarrage.
Avatar
Fabien LE LEZ
On 18 Oct 2012 05:09:45 GMT, Sergio
:

Un W** est loin de réagir comme ça...



Oui, on sait, Windows c'est de la merde, Linux est parfait.
Avatar
Fabien LE LEZ
On 18 Oct 2012 05:09:45 GMT, Sergio
:

Ça existe encore des horloges "peu précises" sur les PC ?



J'ai grossi le trait pour mon exemple mais, oui, l'horloge d'un PC est
très très loin d'une horloge atomique.

Supposons, cas plus probable, que la pile CMOS est en HS, le PC démarre à
une heure fantaisiste. Il vaut mieux un changement "brutal".



Au démarrage d'un système, sans doute.

J'ai tendance à penser "serveur" : importance d'une horloge monotone
et précise, et un redémarrage ou deux par an. J'imagine que pour une
station de travail, la situation est différente.
Avatar
Philippe
bonjour Mr Serge

le jeudi 18 octobre 2012 07:09, Sergio a écrit:

Une Ubuntu (pas testé avec d'autres distributions) réagit bien à ce
genre de problème : Elle met la date à jour dès qu'il y a réseau, de
plus, s'il n'y a pas de réseau, elle se débrouille pour mettre à
l'heure "du dernier arrêt" (je suppose qu'elle se base sur un fichier
log).

Un W** est loin de réagir comme ça...



il faut brusquer W* pour qu'il se synchronise un peu plus souvent que
une fois par semaine. Je choisis 10mn sur les machines que je touche et
je conserve une heure UTC.

quand à Ubuntu, c'est complètement transparent et ça marche très bien.


A+
--
http://www.youtube.com/watch?v=ugCuhqw0ftU
Philippe Vessaire Ò¿Ó¬
Avatar
gerbier
Le 18/10/2012 07:09, Sergio a écrit :
Le Thu, 18 Oct 2012 03:08:00 +0200, Fabien LE LEZ a écrit :

Par ailleurs, il sait détecter la vitesse de l'horloge du PC, et en
déduire l'heure réelle.







Le système utilise une horloge locale, relativement peu précise.
Imaginons que cette horloge, sur ton PC, aille 1 % trop vite.



Ça existe encore des horloges "peu précises" sur les PC ?



sur un serveur (racké en salle climatisée), j'ai une horloge qui prends 8 secondes par jour ...
1 2 3 4