Le décalage horaire est absolument une partie normale de la mesure du temps sur un ordinateur, mais les détails sur combien de décalage se produit peut dépendre de beaucoup de choses différentes. En cas de décalage "anormalement grand", les raisons peuvent aller d'une horloge matérielle de basse qualité à un système avec une forte utilisation. Ainsi, se maintenir synchronisé avec un serveur de temps externe, canonique, est une étape très importante.
La meilleure configuration est d'utiliser ntpdate pour définir l'heure au démarrage, puis d'utiliser ntpd en cours de route pour prendre en compte le décalage horaire. J'ai entendu des plaintes par le passé au sujet de ntpd qui consommerait beaucoup de ressources (je ne peux pas parler de l'exactitude, seulement que j'ai souvent entendu cette plainte), mais les implémentations modernes sont presque imperceptibles. La véritable élégance de ntpd réside dans deux points principaux :
- Il surveillera le décalage horaire au fil du temps pour déterminer à quelle vitesse votre horloge dérive et ajustera en conséquence sa fréquence de sondage
- Chaque fois qu'une synchronisation se produit, il utilisera ces calculs de dérive et ramènera lentement votre horloge à l'heure
Cela présente l'avantage considérable de minimiser l'impact des changements d'heure sur votre système, par exemple vous n'aurez pas des situations où les horodatages dans les journaux semblent sauter.
Je recommande vivement de configurer plusieurs serveurs dans votre configuration, cela peut facilement être fait en éditant le fichier /etc/ntp.conf
et en ajoutant plusieurs déclarations de serveurs. Par exemple ;
serveur ntp.ubuntu.com
serveur 0.pool.ntp.org
serveur 1.pool.ntp.org
Pour discuter des serveurs NTP publics disponibles, vous pouvez voir la question -- Serveurs NTP publics
Un avertissement concernant ntpd est le suivant : si votre heure est trop décalée, alors il ne corrigera pas votre heure. Pour citer la page de manuel (selon RHEL5.6)
Dans le cas où il n'y a pas de puce TOY ou pour quelque raison sa heure est de plus de 1000s du temps du serveur, ntpd suppose qu'il doit y avoir un grave problème et que la seule action fiable est pour l'opérateur d'intervenir et de régler l'horloge manuellement. Cela provoque ntpd à quitter avec un message de panique dans le journal du système.
C'est pourquoi je considère important de définir l'heure au démarrage. Pendant que la machine est éteinte, vous vous appuyez sur l'horloge matérielle et la pile CMOS pour maintenir l'heure. De plus, dans le cas d'une VM, le retour à l'instantané déclenchera presque certainement cette condition. Garder cela à l'esprit est une considération importante si vous utilisez des applications sensibles au temps, telles que l'authentification Kerberos.