NTP : passage de chrony à systemd-timesyncd

NTP : passage de chrony à systemd-timesyncdC’est à partir d’un commentaire lu dans le forum Fedora-fr que j’ai décidé de troquer mon serveur de temps chrony pour le démon systemd-timesyncd. Chrony, comme ntpd et comme systemd-timesyncd permettent de synchroniser l’heure de votre système Linux avec des serveurs de temps distants.

La différence entre chrony et systemd-timesyncd est que le 1er est aussi un serveur de temps, là où systemd ne propose qu’un simple client pour synchroniser votre machine (netstat -lntup|grep 123). Ne vous trompez pas d’usage !

Désactivation de chrony

J’ai tout d’abord désactivé et arrêté chrony :

systemctl stop chronyd
systemctl disable chronyd

J’ai même désinstallé le paquet à l’aide de la commande dnf sous Fedora :

dnf remove chrony

Configuration de systemd-timesyncd

J’ai modifié le fichier /etc/systemd/timesyncd.conf en indiquant les serveurs de temps français :

[Time]
NTP=0.fr.pool.ntp.org 1.fr.pool.ntp.org 2.fr.pool.ntp.org 3.fr.pool.ntp.org
FallbackNTP=3.fr.pool.ntp.org 2.fr.pool.ntp.org 2.fr.pool.ntp.org 0.fr.pool.ntp.org

Activation et démarrage de systemd-timesyncd

systemd-timesyncd se lance et s’active en une seule commande :

timedatectl set-ntp true

Vous pouvez vérifier que le démon systemd-timesynd est lancé à l’aide la commande :

timedatectl status

                      Local time: mer. 2018-05-16 00:06:38 CEST
                  Universal time: mar. 2018-05-15 22:06:38 UTC
                        RTC time: mar. 2018-05-15 22:06:38
                       Time zone: Europe/Paris (CEST, +0200)
       System clock synchronized: yes
systemd-timesyncd.service active: yes
                 RTC in local TZ: no

Pour savoir sur quel serveur de temps vous êtes synchronisé, faites :

systemctl status systemd-timesyncd

● systemd-timesyncd.service - Network Time Synchronization
   Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2018-05-15 23:51:56 CEST; 33min ago
     Docs: man:systemd-timesyncd.service(8)
 Main PID: 8091 (systemd-timesyn)
   Status: "Synchronized to time server 212.51.181.242:123 (0.fr.pool.ntp.org)."
    Tasks: 2 (limit: 4915)
   CGroup: /system.slice/systemd-timesyncd.service
           └─8091 /usr/lib/systemd/systemd-timesyncd

mai 15 23:51:56 srv2 systemd[1]: Starting Network Time Synchronization...
mai 15 23:51:56 srv2 systemd[1]: Started Network Time Synchronization.
mai 15 23:51:56 srv2 systemd-timesyncd[8091]: Synchronized to time server 212.51.181.242:123 (0.fr.pool.ntp.org).

Documentation

Linux  / Formateur Linux Linux Network Time Protocol Ntp Systemd 

Commentaires

Et même en mettant SELinux à « Permissive » ou « 0 », il reste ce bug : https://bugzilla.redhat.com/show_bug.cgi?id=1559286

Mais qui peut facilement se corriger en mettant les bonnes permissions sur « /var/lib/private », à savoir 700.

@Nicolas K.

Je suis resté sur la 27. J’attends un peu avant de basculer à la 28. ;+) Et ça semble marcher. Mais il faut régler les paramètres :

RootDistanceMaxSec=1
PoolIntervalMinSec=20 (16 mini, 32 par défaut)
PoolIntervalMaxSec=60 (2048 par défaut)

La première chose que je fais sur une RHEL/CentOS 7 fraîche, c’est supprimer chrony pour le remplacer par ce bon vieux NTP. :o)

@Nicolas

J’ai toujours mis Chrony, depuis qu’il existe sans constater le moindre problème. Le diable se cache sans doute dans les détails. ;+)

Laisser un commentaire

(requis)

(requis)