TIP Reconnexion automatique de connexion ADSL
Un article de Gentoo Linux Wiki.
|
Terminaux / Shells • CD Live • X • Portage • Système • Systèmes de fichier • Autres |
Voici un petit script qui teste si ma connexion est vraiment active et qui la relance si il y a un problème. Note : l'option persist n'est pas toujours miraculeuse, et apparemment il arrive qu'elle ne marche pas comme il faut.
| Fichier : /etc/init.d/adslautoconnect |
#!/sbin/runscript
opts="start stop check restart"
start() {
ebegin "Starting adslautoconnect"
eend
}
stop() {
ebegin "Stopping adslautoconnect"
eend
}
check() {
if echo `/etc/init.d/adslautoconnect status` | grep "started";
then
einfo "le service de reconnexion est lancé, on regarde si la connexion est bien active"
if ! ping -c 1 ${PING};
then
einfo "la connexion n'est pas active, on la relance"
${RESTART} restart;
# Si la connexion est devenu active, on lance la commande
if ping -c 1 ${PING};
then
${COMMAND};
fi;
fi;
else
einfo "service arreté";
fi;
}
|
| Fichier : /etc/conf.d/adslautoconnect |
# Config file for the adslautoconnect service # server to ping PING="free.fr" # command to execute when connected COMMAND="esdplay --server=flux:2345 /usr/local/share/sounds/adslautoconnect/gdpcnend.wav" # script de démarrage d'adsl RESTART="/etc/init.d/eagle-adsl" |
- /etc/init.d/adslautoconnect start pour démarrer le service de reconnexion automatique ;
- /etc/init.d/adslautoconnect stop pour l'arrêter ;
- /etc/init.d/adslauconnect check pour relancer la connexion si le service de connexion automatique est démarré.
Ensuite, il faut dire au service cron d'effectuer le test à intervalles de temps régulier.
Code : Exemple de ligne pour le service cron
* * * * * root /etc/init.d/adslautoconnect check
Elle dit de faire la vérification toute les minutes.
MAJ : 07/03/2004 Source : http://forums.gentoo.org/viewtopic.php?t=146053 Auteur initial : bestel (email pour les questions : the.bestel at free.fr)
