Bonjour,
Mon RPi fonctionne très bien mais parfois le lien wifi tombe.
Les autres process continuent sans soucis.
Je souhaiterai faire un vérification périodique du réseau et forcer un redémarrage s'il n'arrive pas a joindre la box.
Actuellement j'utilise SiteUpTime pour vérifier que le RPi réponds bien.
Je dois du coup forcer le redémarrage en coupant l'alimentation ce qui n'est pas top...
s'il redémarrait tout seul quand le wifi tombe se serait mieux...
un crontab avec ping sur la box et un sudo shutdown -r now ?
Je galère encore un peu sur les scripts python mais cela ne doit pas être trop dur.
Merci pour votre aide !!
NB : La mise en veille wifi est bien désactivée
Redemarrer le RPi quand le LAN tombe
Modérateur : Francois
-
- Administrateur
- Messages : 3233
- Enregistré le : mer. 17 sept. 2014 18:12
- Localisation : Seine et Marne
Re: Redemarrer le RPi quand le LAN tombe
Bonjour,
Pour palier à ce problème, j'ai fait un script, lancé toutes les 5 minutes par CRON, il vérifie si le Rpi peut "pinguer" le routeur.
Si il ne ping pas, le Rpi relance son réseau (ifdown / ifup), si cela ne fonctionne toujours pas, il se reboot.
Voici le script à lancer par une tache CRON root, moi j'ai mis toute les 5 minutes.
J'ai mis le script dans le home directory de "pi", et créé un dossier "log" qui me permet de vérifier à quel fréquence cela arrive.
Voila,
Domi
PS : Sujet déplacé de "Débutant" vers "Utilisateur Avancés"
Pour palier à ce problème, j'ai fait un script, lancé toutes les 5 minutes par CRON, il vérifie si le Rpi peut "pinguer" le routeur.
Si il ne ping pas, le Rpi relance son réseau (ifdown / ifup), si cela ne fonctionne toujours pas, il se reboot.
Voici le script à lancer par une tache CRON root, moi j'ai mis toute les 5 minutes.
Code : Tout sélectionner
#!/bin/bash
# Test 1 ping sur le serveur PI
ping -q -c1 192.168.1.254 > /dev/null
if [ $? -ne 0 ]; then
# Le ping n'a pas repondu, on redemarre le reseau et on test un deuxieme essai sur la Freebox.
JOUR=$(date '+%d-%m-%Y %H-%M-%S')
echo $JOUR "Redemarrage du service reseau." >> /home/pi/log/reboot.log
sudo ifdown -a > /dev/null 2>&1
sudo ifup -a > /dev/null 2>&1
ping -q -c1 192.168.1.254 > /dev/null
if [ $? -ne 0 ] ; then
# Le ping n'a toujours pas repondu, on reboute le raspi.
JOUR=$(date '+%d-%m-%Y %H-%M-%S')
echo $JOUR "Echec du redemarrage reseau, Reboot de cuveaeau PI." >> /home/pi/log/reboot.log
sudo reboot
else
JOUR=$(date '+%d-%m-%Y %H-%M-%S')
echo $JOUR "Reseau valide suite a relance de ce dernier." >> /home/pi/log/reboot.log
fi
fi
# fin du process.
exit
Voila,
Domi
PS : Sujet déplacé de "Débutant" vers "Utilisateur Avancés"
Passionné de Raspberry, Arduino, ESP8266, ESP32, et objets connectés :
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.
Spécial débutant, concevez vous-même votre domotique DIY : https://www.youtube.com/c/DomoticDIY
Conception d'une station météo DIY, et envoi des infos à votre Domotique.
Re: Redemarrer le RPi quand le LAN tombe
C'est génial !
Pile ce que je cherchait
Merci beaucoup
Pile ce que je cherchait
Merci beaucoup