web-dev-qa-db-fra.com

comment vérifier si NTP a ajusté l'heure du système sous Linux?

J'ai une machine qui a eu quelques problèmes avec certaines des choses que je fais en temps réel. Un des problèmes que j'ai est que le démon NTP a peut-être déplacé l'heure, provoquant de faux délais d'attente.

Comment savoir si le démon NTP a effectivement déplacé l'heure? Des journaux? Je vois le démon NTP redémarrer dans/var/log/messages, mais je ne sais pas si l'ajustement de l'heure doit également y figurer.

pour clarifier: je dois le comprendre à partir des journaux, après l'événement. Peut-être 2 jours après que l'heure a été ajustée. Exécuter des commandes pour voir l'état actuel n'aide pas.

17
n-alexander

Vous pouvez utiliser la commande ntpdc -c sysinfo pour interroger le statut ntpd. Il retourne une sortie similaire à ceci:

system peer:          0.0.0.0
system peer mode:     unspec
leap indicator:       11
stratum:              16
precision:            -20
root distance:        0.00000 s
root dispersion:      338.44917 s
reference ID:         [73.78.73.84]
reference time:       00000000.00000000  Thu, Feb  7 2036  8:28:16.000
system flags:         auth monitor ntp kernel stats
jitter:               0.000000 s
stability:            0.000 ppm
broadcastdelay:       0.003998 s
authdelay:            0.000000 s
8
Janne Pikkarainen

Le fichier drift (/ var/lib/ntp/drift) ne mesure pas la différence entre l'heure locale et l'heure calculée par ntpd en fonction des serveurs de temps contactés .

Au lieu de cela, il s'agit de la dérive estimée (erreur de fréquence) de l'horloge locale (en ppm). Cette valeur est mise à jour par ntpd une fois par heure et ne diminue pas avec le temps.

Autant que je sache, la valeur est utilisée par ntpd après un redémarrage pour estimer à quel point l'horloge locale est erronée (l'horloge locale fonctionne même lorsque la machine est hors tension).

Exemple: Contenu du fichier: 5 La machine a été éteinte 1 jour (86400 s). 5 ppm de 86400 est 0,432 => L’horloge locale est de 0,432 s "dans le futur".

Les points sont les suivants: - ntpd peut maintenant appliquer une première correction approximative à l'heure locale (-0,432 s) immédiatement après le démarrage - ntpd sait immédiatement à quel point l'horloge locale est erronée (dans cet exemple: 5 ppm)

(Je ne suis pas autorisé à commenter le commentaire de Sirex, alors j'ai ajouté un nouveau commentaire)

4
Martin Schneeweis

vous devriez avoir une valeur dans le fichier drift. Son emplacement sera dans votre /etc/ntp.conf

par exemple: "driftfile/var/lib/ntp/drift"

ce fichier est utilisé pour enregistrer la distance entre votre horloge et ce qu'elle devrait être, et lentement, ntp devrait abaisser cette valeur à mesure que le temps passe. - Cela ne se fera pas en une fois car cela pourrait causer des problèmes d'horodatage sur le système.

3
Sirex

ntpq -nc peers vous montrera votre statut de synchronisation avec tous les pairs.

3
BillThor

Désolé, c'est un vieux fil de discussion - espérons que je n'ai pas enfreint de règle ici :)

Dans /etc/ntp.conf, j'ai une ligne qui ressemble à ceci:

#statsdir /var/log/ntpstats/

La description dit de décommenter cette ligne pour enregistrer les statistiques. Je viens juste de configurer ntp sur notre serveur, je ne suis donc pas sûr de ce que cela enregistre, mais je me suis retrouvé ici à chercher les mêmes informations, alors j'espère que cela aidera quelqu'un d'autre.

2
dsl101