• [^] # Re: Un délai dans le script exécuté au démarrage?

    Posté par . En réponse au message Démarrer un script python après 1min au démarrage LXDE. Évalué à 2.

    Je pense que le fait d'avoir placé le script dans le répertoire rc.local provoque le démarrage du script, que le réseau soit disponible ou pas, d'où le problème. Ceci dit je ne connais pas suffisamment Debian pour en être certain. Il doit être possible, en principe, de rendre un service dépendant du réseau mais cela suppose des connaissances de systemd que je n'ai pas.

    Quelques pistes...

    Pour faire plus simple, il existe un répertoire de démarrage personnel pour l'environnement LXDE, nommé .config/lxsession/LXDE-pi/autostart, dans lequel les scripts sont exécutés au démarrage de l'environnement. Si ce répertoire n'existe pas il faut le créer:

    mkdir -p $HOME/.config/lxsession/LXDE-pi/autostart

    Ceci est expliqué (en anglais) sur la section Raspberry Pi du site Stack Overflow.

    Sans connaître le programme "socket" en question, il devrait renvoyer un code d'erreur lorsque la connexion est impossible. Dans certains cas, ce genre de programme attend que la connexion soit disponible et réessaie si ce n'est pas le cas. Donc s'il ne le fait pas, plutôt que d'attendre une minute, l'idée serait de relancer le programme lorsqu'il sort en erreur:

    while !programme_socket; do sleep 5s; done

    Cette ligne de commande est du bash script. Il est possible de traduire ça sous Python aussi si nécessaire.