Synchronisation du temps (Chrony)
Une heure système précise est essentielle pour la corrélation des journaux, la validation des certificats TLS, la cohérence des bases de données et les systèmes distribués. Sur les nouvelles installations de Ubuntu 26.04, Chrony est le démon de synchronisation de l’heure réseau par défaut.
Chrony contre systemd-timesyncd
Ubuntu est livré avec deux implémentations de synchronisation temporelle. Comprendre leurs relations évite les erreurs :
| Fonctionnalité | systemd-timesyncd | Chrony |
|---|---|---|
| Rôle | Client SNTP léger | Client/serveur NTP complet |
| 26.04 par défaut | Solution de repli pour les mises à niveau/systèmes minimaux | Par défaut sur les nouvelles installations |
| Agit comme un serveur NTP | Non | Oui (peut servir du temps à d’autres hôtes) |
| Connectivité intermittente / dérive d’horloge VM | Moyenne | Mieux |
| Commande de gestion | timedatectl | chronyc |
Les deux ne peuvent pas courir en même temps. L’installation de Chrony désactive automatiquement systemd-timesyncd. À ce stade, timedatectl set-ntp true/false ne contrôle plus la synchronisation réelle – utilisez plutôt chronyc et systemctl ... chrony.
Vérifier l’état de synchronisation actuel
# Overall time status
timedatectl
# Confirm which service is handling sync
systemctl status chrony
# If Chrony is not installed and timesyncd is in use
timedatectl show-timesyncInstaller et activer
# A fresh 26.04 install usually has Chrony pre-installed and enabled
sudo apt update
sudo apt install chrony
# Enable and start immediately
sudo systemctl enable --now chronyConfigurer les sources de temps en amont
Le fichier de configuration principal est /etc/chrony/chrony.conf :
sudo nano /etc/chrony/chrony.confConfiguration commune :
# Use the Ubuntu NTP pool (default)
pool ntp.ubuntu.com iburst maxsources 4
# Record the offset of the system clock vs. the hardware clock to speed up future sync
driftfile /var/lib/chrony/chrony.drift
# Step the clock in one go when the initial offset is large (first 3 updates)
makestep 1.0 3Redémarrez le service après la modification :
sudo systemctl restart chronyCommandes courantes chronyc
# View time sources and their status
chronyc sources -v
# View sync statistics (offset, jitter)
chronyc tracking
# View per-source measurement statistics
chronyc sourcestats
# Force an immediate step toward the server
sudo chronyc makestep
# Check whether the clock is synchronized
chronyc tracking | grep "Leap status"Exécuter Chrony en tant que serveur NTP
Pour transmettre du temps à d’autres hôtes sur votre réseau local, autorisez le sous-réseau client dans chrony.conf :
# Allow LAN clients to query this host's time
allow 192.168.1.0/24sudo systemctl restart chrony
# Open the NTP firewall port (UDP 123)
sudo ufw allow 123/udpLes machines virtuelles et les ordinateurs portables qui s’arrêtent pendant de longues périodes sont sujets à une dérive d’horloge. Les mécanismes makestep et drift-file de Chrony corrigent plus rapidement les décalages importants, ce qui en fait un meilleur choix pour ces scénarios que timesyncd.