JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 3:38 pm

galexis wrote:
Tue Jun 02, 2020 2:25 pm
Je me connecte avec un portable via une prise réseau qui est configuré sur le réseau identique que le Pi.
Tu veux dire quoi exactement: le Pi est connecté en ethernet(RJ45) à un ordinateur portable? Cet ordi portable a accès au réseau de ton entreprise?
Ou bien le Pi est connecté sur un switch (le même que l'ordi portable) ce switch étant sur le réseau de l'entreprise?

Est-ce que le Pi voit ton serveur NTP les deux sont bien sur le même réseau. Tu peux pinger?

Code: Select all

ping 10.223.11.57

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 3:47 pm

La capture était bien le résultat en début d'après midi connecté au réseau usine.
J'ai voulu la relancer à l'instant, mais cela ne me donne plus rien en résultat...

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 3:56 pm

@nikotinux pour info ici test de dernière version de Raspberry Pi OS (nouveau nom de Raspbian ;-) ) Sans rien toucher la synchro de l'heure se fait bien. YMMV :D

Code: Select all

pi@raspberrypi:~ $ sudo systemctl status systemd-timesyncd.service 
Warning: The unit file, source configuration file or drop-ins of systemd-timesyncd.service changed on disk. Run 'systemctl daemon-reload' to reload units.
● systemd-timesyncd.service - Network Time Synchronization
   Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/systemd-timesyncd.service.d
           └─disable-with-time-daemon.conf
   Active: active (running) since Sat 2020-05-30 14:51:31 CEST; 3 days ago
     Docs: man:systemd-timesyncd.service(8)
 Main PID: 326 (systemd-timesyn)
   Status: "Synchronized to time server for the first time [2a00:2381:19c6::200]:123 (2.debian.pool.ntp.org)."
    Tasks: 2 (limit: 4915)
   Memory: 3.0M
   CGroup: /system.slice/systemd-timesyncd.service
           └─326 /lib/systemd/systemd-timesyncd

May 30 14:51:31 raspberrypi systemd[1]: Starting Network Time Synchronization...
May 30 14:51:31 raspberrypi systemd[1]: Started Network Time Synchronization.
Jun 02 17:43:01 raspberrypi systemd-timesyncd[326]: Synchronized to time server for the first time [2a00:2381:19c6::200]:123 (2.debian.pool.ntp.org).

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 3:59 pm

Le raspberry est sur le même réseau que le serveur NTP et arrive bien a le pinguer.
Le raspberry est sur le réseau du serveur via un switch avec un port dans ce réseau, mon portable est aussi sur un autre port d'une switch aussi sur ce réseau. C'est un réseau machine sans internet.

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 4:03 pm

MAis sinon avec NTPD et un script qui synchroniserait au démarrage ? Cela fonctionnait à la main....

nikotinux
Posts: 765
Joined: Sat Feb 02, 2013 2:11 am

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 4:35 pm

@jumpzero

c'est la derniére version téléchargée ce matin et mise a jour dans la foulée !!
comme je l'ai dit il y a bien synchro mais sur les serveur du pool debian alors que mon serveur dhcp transmet bien l'adresse de mon serveur local.
donc le client dhcpd installé par défaut pour raspbian ne prends pas en compte ce paramètre et le le fournit donc pas a systemd.timesyncd.

si je le gicle pour revenir au client dhclient c'est bon, il est pris en compte, je peux carrement supprimer le fichier timesyncd.conf.

on peux aussi utiliser systemd-networkd pour definir le serveur ntp par fichier .network ... jamais testé mais ca me brancherai si j'avais le temps !

mike913
Posts: 55
Joined: Thu Dec 19, 2019 6:38 am
Location: Essonne FRANCE
Contact: Website

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 4:44 pm

A l' époque ou j' utilisai ntpdate
j' avais ce script rendu exécutable

Code: Select all

#! /bin/sh
########################################################
sudo ntpdate -u mafreebox.free.fr
avec une entrée dans crontab pour que la synchronisation soit faite au démarrage et toutes les heures

Code: Select all

MAILTO=""
@reboot  /home/pi/ntp.sh
@hourly	 /home/pi/ntp.sh

nikotinux
Posts: 765
Joined: Sat Feb 02, 2013 2:11 am

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 5:00 pm

pour ne pas faire tourner galexis en bourrique on peux aussi modifier le fichier /etc/rc.local

Code: Select all

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
  printf "My IP address is %s\n" "$_IP"
fi

/usr/sbin/ntpdate 10.223.11.57

exit 0
si la synchro fonctionne bien on le voit apparaître au démarrage aux alentours du message montrant l'adresse IP du rasp

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 5:06 pm

c'est la derniére version téléchargée ce matin et mise a jour dans la foulée !!
comme je l'ai dit il y a bien synchro mais sur les serveur du pool debian alors que mon serveur dhcp transmet bien l'adresse de mon serveur local.
donc le client dhcpd installé par défaut pour raspbian ne prends pas en compte ce paramètre et le le fournit donc pas a systemd.timesyncd.

si je le gicle pour revenir au client dhclient c'est bon, il est pris en compte, je peux carrement supprimer le fichier timesyncd.conf.

on peux aussi utiliser systemd-networkd pour definir le serveur ntp par fichier .network ... jamais testé mais ca me brancherai si j'avais le temps !
Ça pourrait marcher dans mon cas ?
Des explications plus détaillées sur l a marché à suivre ?

nikotinux
Posts: 765
Joined: Sat Feb 02, 2013 2:11 am

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 5:19 pm

normalement timesyncd fonctionne "out-of-the-box" ou presque !
çà n'a pas l'air d’être le cas .... il serait sûrement très intéressant de comprendre pourquoi mais on ne va pas non plus y passer la semaine !

installe ntpdate si ce n'est déjà fait, utilise un des trucs des posts précédents pour au moins te débarrasser du soucis. on peux y revenir après si le coeur t'en dit !

mike913
Posts: 55
Joined: Thu Dec 19, 2019 6:38 am
Location: Essonne FRANCE
Contact: Website

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 5:22 pm

@nikotinux
sur la dernière version avec le fichier /etc/dhcpcd.conf d'origine il n' y a rien à faire pour que le Raspberry se synchronise avec les serveurs debian.
Et en modifiant le fichier /etc/systemd/timesyncd.conf avec les lignes suivantes

Code: Select all

[Time]
NTP=mafreebox.free.fr 
FallbackNTP=ntp2.jussieu.fr 0.fr.pool.ntp.org
et sans rien changer d' autre la synchronisation se fait bien sur mafreebox.free.fr
voici ma version de buster:
Linux RASPI42-MATE 5.4.42-v7l+ #1319 SMP Wed May 20 14:12:03 BST 2020 armv7l GNU/Linux

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 5:29 pm

Je ne sais toujours pas quoi mettre dans FALLBACKNTP ?
Pour le script, c'est l'origine du poste, ça e marche pas: soit le script ne s'exécute pas ou ça ne prenait pas en compte...

nikotinux
Posts: 765
Joined: Sat Feb 02, 2013 2:11 am

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 5:54 pm

@galexis

modifie le rc.local comme mon poste un peu avant ! testé ! çà fonctionne !
impossible de préciser FallbackNTP si, comme tu le dit, le rasp n'as pas accès a internet ! ton serveur est la seule option possible.

@mike913

je précise bien, avec le timesyncd.conf d'origine voire supprimé, il doit y avoir synchro avec le serveur configuré via dhcp comme c'est le cas sur mon réseau. hors çà ne se fait pas et il se replie sur les serveur de ntp.org, donc le client dhcpd merde a ce niveau !

JumpZero
Posts: 1131
Joined: Thu Mar 28, 2013 7:35 pm
Location: 127.0.0.1

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 6:05 pm

nikotinux wrote:
Tue Jun 02, 2020 4:35 pm
@jumpzero

c'est la derniére version téléchargée ce matin et mise a jour dans la foulée !!
comme je l'ai dit il y a bien synchro mais sur les serveur du pool debian alors que mon serveur dhcp transmet bien l'adresse de mon serveur local.
donc le client dhcpd installé par défaut pour raspbian ne prends pas en compte ce paramètre et le le fournit donc pas a systemd.timesyncd.

si je le gicle pour revenir au client dhclient c'est bon, il est pris en compte, je peux carrement supprimer le fichier timesyncd.conf.

on peux aussi utiliser systemd-networkd pour definir le serveur ntp par fichier .network ... jamais testé mais ca me brancherai si j'avais le temps !
@nikotinux, ok je t'avais lu trop vite, ou pas compris "autoconfiguration"
De mon coté je n'ai jamais testé cette option info serveur NTP depuis DHCP juste vu que a existait...

@galexis
fais simple puisque ntpdate fonctionne, prends le script que te donnes nikotinux, observe les messages de démarrage et dis nous ce qu'il en est.

mike913
Posts: 55
Joined: Thu Dec 19, 2019 6:38 am
Location: Essonne FRANCE
Contact: Website

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 6:17 pm

@nikotinux
tu parles bien de ce fichier: /etc/dhcp/dhclient.conf
je n' ai rien modifié dans le répertoire /etc/dhcp/ ni dans le fichier /etc/dhcpcd.conf
j' ai seulement modifié le fichier /etc/systemd/timesyncd.conf comme dis précédemment et la synchronisation a bien lieu sur le serveur cité dans /etc/systemd/timesyncd.conf

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 7:12 pm

pour ne pas faire tourner galexis en bourrique on peux aussi modifier le fichier /etc/rc.local
Code: Select all

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi

/usr/sbin/ntpdate 10.223.11.57

exit 0
si la synchro fonctionne bien on le voit apparaître au démarrage aux alentours du message montrant l'adresse IP du rasp
Ntpdate va s'exécuter en mode sudo ? Fallais que je mettes -u pour que cela fonctionne à la main

epoch1970
Posts: 5128
Joined: Thu May 05, 2016 9:33 am
Location: Paris, France

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 7:27 pm

Wow. Semoule de 1er ordre cette discussion, et le problème aussi !

Je viens de regarder comment se passe l'acquistion d'un serveur NTP par dhcpcd avec le dernier raspios :

Préambule :
  • Mon serveur DHCP envoie l'option 42. Ca n'est pas obligatoire
  • ntpd n'est pas installé car sinon timesyncd ne se lance pas
  • /etc/network/interfaces n'est pas édité car sinon dhcpcd ne s'occupe pas des interfaces qui y sont définies
  • systemd-networkd n'est pas activé c'est déjà assez le bins sans lui
Test avec le système tout standard.

Code: Select all

root@sun:/home/pi# systemctl status systemd-timesyncd
...
   Status: "Synchronized to time server for the first time 162.159.200.123:123 (2.debian.pool.ntp.org)."
D'où qu' y vient çuilà ?
man timesyncd.conf wrote:The default configuration is defined during compilation, so a configuration file is only needed when it is
necessary to deviate from those defaults.
Admirable.

Dans /etc/dhcpcd.conf on active la ligne

Code: Select all

# Most distributions have NTP support.
option ntp_servers
Reboot.

Résultat :

Code: Select all

systemctl status systemd-timesyncd
...
   Status: "Synchronized to time server for the first time 162.159.200.123:123 (2.debian.pool.ntp.org)."
Urgh...

Ach: viewtopic.php?t=217832

Code: Select all

cat <<"EOF" > /lib/dhcpcd/dhcpcd-hooks/50-timesyncd.conf
# Set NTP servers for systemd-timesyncd


confd=/run/systemd/timesyncd.conf.d

set_servers() {
    mkdir -p "$confd"
    (
        echo "# Created by dhcpcd hook"
        echo "[Time]"
        echo "NTP=$new_ntp_servers"
    ) > "$confd/dhcp-ntp.conf"

    # Tell timesyncd it has an updated configuration

    systemctl try-reload-or-restart systemd-timesyncd
}

if $if_up; then
    set_servers
fi
EOF
root@sun:~# 
Stimmt! Reboot.

Résultat :

Code: Select all

root@sun:/home/pi# systemctl status systemd-timesyncd
...
   Status: "Synchronized to time server for the first time 172.17.0.2:123 (172.17.0.2)."
Voilà on y est...
"S'il n'y a pas de solution, c'est qu'il n'y a pas de problème." Les Shadoks, J. Rouxel

nikotinux
Posts: 765
Joined: Sat Feb 02, 2013 2:11 am

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 8:37 pm

aaah ! epoch a trouvé comment faire fonctionner dhcpcd (putain de typo) avec un serveur dhcp pour faire accepter l'option ntp !!
172.17.... gros réseau local !

de toute façon c'est un détail vu que ça ne concerne pas grand monde et que ça doit se synchro quelque part !! effectivement les serveurs ntp sont inscrits a la compile et diffèrent selon les distros.
mais vu ou va ce thread autant préciser ...

@galexis
pas de sudo, /etc/rc.local est executé par root ! si l'option -u est obligatoire dans ton cas ça peut expliquer les problèmes avec timesyncd !!!

@mike913
je préfère effectivement revenir a dhclient dont le fichier de conf précise bien dans dhclient.conf qu'il demande en autre l'option ntp-servers au serveur.
coté serveur c'est précisé dans le fichier dhcpd.conf (typo ... ok!) si on installe le package de ISC !
ouf

epoch1970
Posts: 5128
Joined: Thu May 05, 2016 9:33 am
Location: Paris, France

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 9:18 pm

nikotinux wrote:
Tue Jun 02, 2020 8:37 pm
c'est un détail vu que ça ne concerne pas grand monde et que ça doit se synchro quelque part !!
Beh moi j'ai ma source de temps, et je préfère l'utiliser plutôt qu'une autre. Sinon j'en aurai pas, heh.
En l'occurence sur le gros réseau en question le flux n'est pas bloqué mais sur d'autres la machine se serait cassé le nez en allant chercher 0.debian.machin.truc

Et c'est aussi le cas de l'OP qui veut utiliser le serveur de son réseau et pas une horloge trouvée au hasard sur internet.
"S'il n'y a pas de solution, c'est qu'il n'y a pas de problème." Les Shadoks, J. Rouxel

nikotinux
Posts: 765
Joined: Sat Feb 02, 2013 2:11 am

Re: Script ntpdate au démararge du Pi : aide

Tue Jun 02, 2020 9:37 pm

j'ai aussi mes serveurs dhcp dns et ntp en local mais je pense que la quasi totalité des utilisateurs ici ne sont pas dans ce cas (box fai et basta !)

dans le cas de galexis, si l'option -u est obligatoire dans ntpdate il y a un filtrage sur le réseau, mais je n'avais pas vu que c’était précisé avant !

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Wed Jun 03, 2020 7:26 am

j'ai aussi mes serveurs dhcp dns et ntp en local mais je pense que la quasi totalité des utilisateurs ici ne sont pas dans ce cas (box fai et basta !)

dans le cas de galexis, si l'option -u est obligatoire dans ntpdate il y a un filtrage sur le réseau, mais je n'avais pas vu que c’était précisé avant !
Un filtrage de quel genre ? Ouverture de port ?

Si je créé le fichier /lib/dhcpcd-hooks/50-timesyncd, est-ce que cela pourrait fonctionner ? Ce sont des commandes indiquées ci-dessous ou le contenu du fichier à copier/coller ?

Code: Select all


cat <<"EOF" > /lib/dhcpcd/dhcpcd-hooks/50-timesyncd.conf
# Set NTP servers for systemd-timesyncd


confd=/run/systemd/timesyncd.conf.d

set_servers() {
    mkdir -p "$confd"
    (
        echo "# Created by dhcpcd hook"
        echo "[Time]"
        echo "NTP=$new_ntp_servers"
    ) > "$confd/dhcp-ntp.conf"

    # Tell timesyncd it has an updated configuration

    systemctl try-reload-or-restart systemd-timesyncd
}

if $if_up; then
    set_servers
fi
EOF
root@sun:~# 

nikotinux
Posts: 765
Joined: Sat Feb 02, 2013 2:11 am

Re: Script ntpdate au démararge du Pi : aide

Wed Jun 03, 2020 8:57 am

si ntpdate ne fonctionne d'avec -u, inutile de chercher ailleurs, se sera la seule méthode qui fonctionnera chez toi !

galexis
Posts: 34
Joined: Fri Oct 28, 2016 8:22 pm

Re: Script ntpdate au démararge du Pi : aide

Wed Jun 03, 2020 9:07 am

Du coup je m'en suis sorti avec:
- NTPD
- rc.local modifié avec ajout /usr/sbin/ntpdate -u 10.223.11.57
- mais surtout avec un sleep 10 juste avant.

La synchro fonctionne.

Merci pour votre aide.

Return to “Français”