J’ai configuré un client et/ou un serveur NTP (Network Time Protocol) pour gérer l’horloge du système sur un réseau. Mais, comment puis-je vérifier qu’il fonctionne correctement ? Comment puis-je vérifier l’état du NTP?
Le maintien de l’heure correcte est essentiel sur un système serveur et client. Vous pouvez utiliser l’un des programmes suivants pour vérifier que la configuration client NTP fonctionne correctement sur les systèmes Linux ou de type Unix.
Comment vérifier que NTP fonctionne ?
- ntpq – programme de requête NTP standard
- ntpstat – montre le statut de la synchronisation du temps réseau état de la synchronisation
- Timedatectl – affiche ou définit des informations sur ntp en utilisant systemd
Détails du tutoriel | |
---|---|
Niveau de difficulté | Facile |
Privilèges de démarrage | Non |
Exigences | Aucune |
Est. temps de lecture | 2m |
Voyons toutes les commandes et les exemples en détail
Occasionnellement, il se peut que les outils suivants ne soient pas installés par défaut sur votre distro Linux/Unix. Si vous obtenez une erreur « commande non trouvée ». Recherchez ces outils et installez-les.
Vérifier que NTP fonctionne ou non avec la commande ntpstat
La commande ntpstat rapporte l’état de synchronisation du démon NTP exécuté sur la machine locale. S’il s’avère que le système local est synchronisé à une source de temps de référence, ntpstat rapportera la précision approximative du temps.
Statut de sortie de la commande ntpstat
Vous pouvez utiliser le statut de sortie (valeurs de retour) pour vérifier ses opérations à partir d’un script shell ou de la ligne de commande elle-même :
- Si le statut de sortie est 0 – L’horloge est synchronisée.
- Si le statut de sortie est 1 – L’horloge n’est pas synchronisée.
- état de sortie 2 – Si l’état de l’horloge est indéterminé, par exemple si ntpd n’est pas joignable.
Tapez la commande comme suit:$ ntpstat
Exemples de sorties:
synchronised to NTP server (149.20.54.20) at stratum 3 time correct to within 42 ms polling server every 1024 s
Utiliser la commande echo pour afficher l’état de sortie du client ntp :$ echo $?
Exemples de sorties:
0
Vérification de l’état de NTP avec la commande ntpq
Le programme utilitaire ntpq est utilisé pour surveiller les opérations du démon NTP ntpd et déterminer les performances. Le programme peut être exécuté en mode interactif ou contrôlé à l’aide d’arguments de ligne de commande. Tapez la commande suivante sur votre système Linux ou basé sur Unix :$ ntpq -pn
OR$ ntpq -p
Échantillons de sorties :
remote refid st t when poll reach delay offset jitter==============================================================================*dione.cbane.org 204.123.2.5 2 u 509 1024 377 51.661 -3.343 0.279+ns1.your-site.c 132.236.56.252 3 u 899 1024 377 48.395 2.047 1.006+ntp.yoinks.net 129.7.1.66 2 u 930 1024 377 0.693 1.035 0.241 LOCAL(0) .LOCL. 10 l 45 64 377 0.000 0.000 0.001
* la source sur laquelle vous êtes synchronisé (syspeer). Ce qui précède est un exemple de client ntp qui fonctionne. Où,
- -p : Imprimer une liste des peers connus du serveur ainsi qu’un résumé de leur état.
- -n : Sortir toutes les adresses d’hôtes au format numérique en quarts de points plutôt que de les convertir en noms d’hôtes canoniques.
Une autre source fiable consiste à exécuter la commande suivante :$ ntpq -c rv
Regardez le code de saut comme suit :
Donc, le code de saut 0 (leap_none) signifie un état synchronisé normal. Et leap code 3 (leap_alarm) signifie que NTP n’a jamais été synchronisé. Voici un exemple de sorties:
Une note sur la commande timedatectl
Si vous utilisez un système basé sur systemd, exécutez la commande suivante pour vérifier l’état du service# timedatectl status
Exemples de sorties :
Est-ce que mon NTP (systemd-timesyncd) fonctionne ?
configuration de systemd-timesyncd
Si NTP activé est défini sur Non. Essayez de configurer en éditant le fichier /etc/systemd/timesyncd.conf comme suit :# vi /etc/systemd/timesyncd.conf
Apportez/modifiez comme suit, c’est-à-dire ajoutez des serveurs de temps ou modifiez ceux qui sont fournis, décommentez la ligne correspondante et listez leur nom d’hôte ou leur IP séparés par un espace (par défaut de mon serveur Debian 8.x):
Servers=0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org
Enregistrer et fermer le fichier. Enfin, démarrez et activez-la, exécutez:# timedatectl set-ntp true
# timedatectl status
Les sorties de l’échantillon :
Local time: Mon 2019-09-30 18:25:38 IST Universal time: Mon 2019-09-30 12:55:38 UTC RTC time: Mon 2019-09-30 12:55:38 Time zone: Asia/Kolkata (IST, +0530) System clock synchronized: yessystemd-timesyncd.service active: yes RTC in local TZ: no
Ce qui précède est un moyen facile de vérifier que NTP fonctionne sous Linux.
Conclusion
Vous avez appris comment vérifier que votre configuration NTP fonctionne correctement. Vous savez maintenant comment vérifier l’état de votre date et de votre heure, synchronisées avec les serveurs de temps en amont. Pour plus d’infos, voir les docs de ntpd ici.
🐧 11 commentaires jusqu’ici…. en ajouter un ↓
Catégorie | Liste des commandes Unix et Linux | Gestion des fichiers | cat |
---|---|
Firewall | Alpine Awall – CentOS 8 – OpenSUSE – RHEL 8 – Ubuntu 16.04 – Ubuntu 18.04 – Ubuntu 20.04 |
Utilitaires réseau | dig – host – ip – nmap |
OpenVPN | CentOS 7 – CentOS 8 – Debian 10 – Debian 8/9 – Ubuntu 18.04 – Ubuntu 20.04 |
Gestionnaire de paquets | apk – apt |
Gestion des processus | bg – chroot – cron – disown – fg – jobs – killall – kill – pidof – pstree – pwdx – time |
Recherche | grep – whereis – which |
Informations sur l’utilisateur | groupes – id – lastcomm – last – lid/libuser-.lid – logname – members – users – whoami – who – w |
WireGuard VPN | Alpine – CentOS 8 – Debian 10 – Firewall – Ubuntu 20.04 |
.