Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédente | |||
sysadmin:linux:systemd:troubleshooting:timesyncd_refuse_ntp_via_dhcp [2022/01/09 11:28] – yoann | sysadmin:linux:systemd:troubleshooting:timesyncd_refuse_ntp_via_dhcp [2022/01/09 16:34] (Version actuelle) – yoann | ||
---|---|---|---|
Ligne 3: | Ligne 3: | ||
====== timesyncd n' | ====== timesyncd n' | ||
- | Lorsque **NetworkManager** s' | + | Lorsque **NetworkManager** s' |
- | Le script (hook) ''/ | + | En effet **NetworkManager** par défaut **ne communique pas directement avec systemd-timesyncd.service**. |
- | Une solution largement utilisée consiste à placer un script dans ''/ | + | Cependant la fonctionnalité NetworkManager dispatcher peut être utilisée pour mettre à jour la configuration de l' |
Ligne 81: | Ligne 81: | ||
nmcli connection up SFR_4380 | nmcli connection up SFR_4380 | ||
</ | </ | ||
+ | |||
+ | Les commandes ci-dessous permettent de créer les répertoires si nécessaire: | ||
+ | |||
+ | <code bash> | ||
+ | for r in "/ | ||
+ | do | ||
+ | if [ ! -d $r ]; | ||
+ | then | ||
+ | # Le repertoire n' | ||
+ | mkdir $r | ||
+ | fi | ||
+ | done | ||
+ | </ | ||
+ | |||
+ | Créer le script / | ||
+ | <code bash 10-update-timesyncd> | ||
+ | # | ||
+ | |||
+ | [[ -z " | ||
+ | INTERFACE=" | ||
+ | ACTION=" | ||
+ | |||
+ | case $ACTION in | ||
+ | up | dhcp4-change | dhcp6-change) | ||
+ | [[ -n " | ||
+ | mkdir / | ||
+ | cat << | ||
+ | [Time] | ||
+ | NTP=$DHCP4_NTP_SERVERS | ||
+ | THE_END | ||
+ | systemctl restart systemd-timesyncd.service | ||
+ | ;; | ||
+ | down) | ||
+ | rm -f "/ | ||
+ | systemctl stop systemd-timesyncd.service | ||
+ | ;; | ||
+ | esac | ||
+ | </ | ||
+ | |||
+ | Rendre le script exécutable pour root seulement: | ||
+ | <code bash> | ||
+ | chmod ug+x / | ||
+ | </ | ||
+ | |||
+ | S' | ||
+ | <code bash> | ||
+ | systemctl is-enabled NetworkManager-dispatcher.service | ||
+ | </ | ||
+ | |||
+ | Après ces modifications, | ||
+ | |||
+ | <code bash> | ||
+ | # Affiche le serveur NTP utilisé | ||
+ | timedatectl show-timesync --all | ||
+ | |||
+ | LinkNTPServers= | ||
+ | SystemNTPServers=192.168.33.254 | ||
+ | FallbackNTPServers=ntp.ubuntu.com | ||
+ | ServerName=192.168.33.254 | ||
+ | ServerAddress=192.168.33.254 | ||
+ | RootDistanceMaxUSec=5s | ||
+ | PollIntervalMinUSec=32s | ||
+ | PollIntervalMaxUSec=34min 8s | ||
+ | PollIntervalUSec=1min 4s | ||
+ | NTPMessage={ Leap=0, Version=4, Mode=4, Stratum=3, Precision=-23, | ||
+ | Frequency=6818847 | ||
+ | |||
+ | # Affiche le status du service systemd-timesyncd | ||
+ | timedatectl status | ||
+ | Local time: dim. 2022-01-09 17:27:53 CET | ||
+ | | ||
+ | RTC time: dim. 2022-01-09 16: | ||
+ | Time zone: Europe/ | ||
+ | System clock synchronized: | ||
+ | NTP service: active | ||
+ | RTC in local TZ: no | ||
+ | </ | ||
+ | |||
+ | Le service indique bien que l' | ||
+ | |||
===== Références ===== | ===== Références ===== | ||
* https:// | * https:// | ||
+ | * https:// | ||
+ | * https:// |