Pour utiliser une implémentation NTP réelle, vous devez en installer et en configurer une, chronyou peut-être ntpd. Faites-le si vous avez besoin d'une surveillance des performances horaires. Je vais assumer chrony.
Ajoutez iburstà vos lignes poolou serverdans votre configuration pour accélérer les premiers paquets. La stabilisation peut encore prendre quelques minutes, soyez patient.
chronyc trackingaffichera le décalage actuel. Ayez une idée de vos besoins, une seconde de précision peut facilement tolérer des dizaines de millisecondes de décalage.
chronyc makestepeffectuera immédiatement le réglage actuel. Pas nécessaire en général.
A propos de la seule façon de régler l'heure avec timesyncd est manuellement: timedatectl set-time "2019-01-15 00:40:16". Il ne dispose pas de moyens solides pour discipliner et surveiller l'horloge. Les statistiques de base NTP via timedatectl timesync-statussont une chose relativement nouvelle, je ne pense pas que cette option soit disponible dans Red Hat 7 ou Ubuntu 18.04.
systemd définit "synchronisé" comme si NTP a déjà été utilisé pour dire à Linux d'ajuster l'horloge. Plus précisément, si la discipline du noyau appelle adjtimex () retourné sans erreur, et non l'état initial. Voir le code source, systemd / src / basic / time-util.c.
Merci pour votre réponse, John. Donc, en fait, je peux désactiver systemd-timesyncd et utiliser chrony uniquement? Je ne suis pas sûr de comprendre pourquoi systemd a une option NTP et s'appelle timeSYNCd s'il n'est pas capable de synchroniser l'heure en fait? «Systemd définit« syncronisé »comme si l'appel de discipline du noyau NTP adjtimex () est retourné sans erreur, et non l'état initial» - ce n'est pas très clair pour moi.
manifestant
1
@chevallier systemd-timesyncd est très simple, et il est assez bon pour les cas les plus courants, par exemple un serveur avec une horloge en temps réel qui devrait fonctionner et sur le réseau 24x7. Le vôtre n'est pas un cas courant, vous ne devriez donc probablement pas l'utiliser. chrony est beaucoup mieux à même de gérer les interruptions de la connectivité réseau et d'être arrêté pendant de longues périodes (par exemple un ordinateur portable) ou de ne pas avoir de RTC du tout (par exemple les appareils intégrés).
Michael Hampton
1
timesyncd est un client SNTP, il définit donc l'heure sans le discipliner correctement. Ce qui est bien pour les exigences de précision grossières. Si vous souhaitez mesurer les performances temporelles ou attendre la synchronisation, utilisez un NTP complet comme chrony ou ntpd.
John Mahowald
11
Sans installer d'autres packages ... Désactivez NTP, réglez manuellement l'heure pour qu'il soit suffisamment proche , réactivez NTP:
Définir le service NTP inactif
$ timedatectl set-ntp false
Réglez l'heure manuellement
Oui, c'est triste, mais cela fonctionne et vous n'avez pas besoin de fouiller pour installer quoi que ce soit et le faire fonctionner. Obtenez l' heure LOCALE approximative à partir de l'horloge murale, de votre téléphone et d'Internet. Il n'a pas besoin d'être parfait car nous réactiverons ntp dans un instant ...
$ sudo timedatectl set-time "2019-06-22 13:41:00"
Définir le service NTP actif
$ sudo timedatectl set-ntp true
Attendre
john@mybox:~$ timedatectl
Local time: Sat 2019-06-22 13:49:53 AEST
Universal time: Sat 2019-06-22 03:49:53 UTC
RTC time: Sat 2019-06-22 03:49:54
Time zone: Australia/Sydney (AEST, +1000)
System clock synchronized: no
NTP service: active
RTC in local TZ: no
«L'horloge système synchronisée: non» se transforme en «oui» lorsqu'elle s'est suffisamment ajustée pour être considérée comme «synchronisée».
Dépannage
$ cat /etc/systemd/timesyncd.conf
[Time]
NTP=pool.ntp.org
$ timedatectl timesync-status
Server: 13.210.208.89 (au.pool.ntp.org)
Poll interval: 8min 32s (min: 32s; max 34min 8s)
Packet count: 0
$ grep systemd-timesyncd /var/log/syslog | tail
Jun 22 14:13:09 meebox systemd-timesyncd[8333]: Timed out waiting for reply from 103.214.220.220:123 (au.pool.ntp.org).
Mes paquets ntp étaient bloqués par le pare-feu de l'entreprise.
L'installation d'un autre service de synchronisation horaire a également été ma première idée, mais ce n'est qu'une solution de contournement. Je cherchais une vraie solution. Voilà votre réponse. Ça marche. Merci :-)
Sans installer d'autres packages ... Désactivez NTP, réglez manuellement l'heure pour qu'il soit suffisamment proche , réactivez NTP:
Définir le service NTP inactif
Réglez l'heure manuellement
Oui, c'est triste, mais cela fonctionne et vous n'avez pas besoin de fouiller pour installer quoi que ce soit et le faire fonctionner. Obtenez l' heure LOCALE approximative à partir de l'horloge murale, de votre téléphone et d'Internet. Il n'a pas besoin d'être parfait car nous réactiverons ntp dans un instant ...
Définir le service NTP actif
Attendre
«L'horloge système synchronisée: non» se transforme en «oui» lorsqu'elle s'est suffisamment ajustée pour être considérée comme «synchronisée».
Dépannage
Mes paquets ntp étaient bloqués par le pare-feu de l'entreprise.
la source