Impossible de lancer wvdial au boot [RESOLU]
Modérateur : Francois
Re: Impossible de lancer wvdial au boot
J'ai réussi à rediriger la sortie d'erreur qui me donne :
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","free"
AT+CGDCONT=1,"IP","free"
ERROR
--> Bad init string.
--> Cannot open /dev/ttyUSB0: Device or resource busy
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","free"
AT+CGDCONT=1,"IP","free"
ERROR
--> Bad init string.
---------
Pourtant le wvdial.conf est le même.
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","free"
AT+CGDCONT=1,"IP","free"
ERROR
--> Bad init string.
--> Cannot open /dev/ttyUSB0: Device or resource busy
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","free"
AT+CGDCONT=1,"IP","free"
ERROR
--> Bad init string.
---------
Pourtant le wvdial.conf est le même.
Re: Impossible de lancer wvdial au boot
Dans le crontab j'ai :
@reboot /home/pi/wvdialUp2
avec wvdialUp2 :
#!/bin/bash
echo "de wvdialUp2">/home/pi/wv.log
sudo wvdial 1>>/home/pi/wv.log 2>>/home/pi/wv.err
@reboot /home/pi/wvdialUp2
avec wvdialUp2 :
#!/bin/bash
echo "de wvdialUp2">/home/pi/wv.log
sudo wvdial 1>>/home/pi/wv.log 2>>/home/pi/wv.err
-
- Raspinaute
- Messages : 970
- Enregistré le : dim. 28 déc. 2014 15:28
- Localisation : Le long de la côte, au dessus du pays des bigoudennes, aïe
Re: Impossible de lancer wvdial au boot
Pour le crontab, c'est normal que cela ne fonctionne pas d'après https://doc.ubuntu-fr.org/cron (lisez bien la partie 5, javais déjà donné le lien)
autre aide
Pour débuguer, je mettrais bien votre script dans un dossier $PATH de root (par exemple : /usr/bin)
crontab :
@reboot pi wvdialUp2
ou
PATH=/usr/sbin:/usr/bin:/sbin:/bin # au début du crontab
...
@reboot pi wvdialUp2
Et puisque l'on veut tester une commande qui se lance automatiquement en root au démarrage, nous pouvons tester la commande native visudo
donc
@reboot pi visudo
ou
PATH=/usr/sbin:/usr/bin:/sbin:/bin # au début du crontab
...
@reboot pi visudo
autre aide
Pour débuguer, je mettrais bien votre script dans un dossier $PATH de root (par exemple : /usr/bin)
crontab :
@reboot pi wvdialUp2
ou
PATH=/usr/sbin:/usr/bin:/sbin:/bin # au début du crontab
...
@reboot pi wvdialUp2
Et puisque l'on veut tester une commande qui se lance automatiquement en root au démarrage, nous pouvons tester la commande native visudo
donc
@reboot pi visudo
ou
PATH=/usr/sbin:/usr/bin:/sbin:/bin # au début du crontab
...
@reboot pi visudo
[Pour bien commencer] Pour les nouveaux acquéreurs de Raspberry Pi (index de liens utiles)
Awesome Raspberry Pi
Awesome Raspberry Pi
Re: Impossible de lancer wvdial au boot
Dans le crontab de root j'ai :
avec wvdiaUp2 :
et wv.err :
Le wvdial.conf est pourtant le même ...
Code : Tout sélectionner
@reboot/home/pi/wvdialUp2
Code : Tout sélectionner
#!/bin/bash
echo "de wvdialUp2">/home/pi/wv.log
sudo wvdial 1>>/home/pi/wv.log 2>>/home/pi/wv.err
Code : Tout sélectionner
--> --> WvDial: Internet dialer version 1.61
WvDial: Internet dialer version 1.61
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","free"
AT+CGDCONT=1,"IP","free"
ERROR
--> Bad init string.
--> Initializing modem.
--> Sending: ATZ
ATZ
OK
--> Sending: ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
OK
--> Sending: AT+CGDCONT=1,"IP","free"
--> Cannot open /dev/ttyUSB0: Device or resource busy
AT+CGDCONT=1,"IP","free"
ERROR
--> Bad init string.
Re: Impossible de lancer wvdial au boot
Merci pour vos réponses ...
Voici mon crontab :
Rien ne se passe les fichiers sont vides. Je vais essayer d'enlever le pi ...
Voici mon crontab :
Code : Tout sélectionner
PATH=/usr/bin:/usr/sbin:/sbin:/bin
@reboot pi echo "DANS CRON" >>/home/pi/wvcr.log
@reboot pi visudo
@reboot pi /usr/bin/wvdialUp2
Re: Impossible de lancer wvdial au boot
Sans les pi :
visudo ne se lance pas, mais les 2 autres lignes sont exécutées.
Le fichier wv.err montre toujours l'erreur présentée ci-dessus (Bad init string)
visudo ne se lance pas, mais les 2 autres lignes sont exécutées.
Le fichier wv.err montre toujours l'erreur présentée ci-dessus (Bad init string)
-
- Raspinaute
- Messages : 970
- Enregistré le : dim. 28 déc. 2014 15:28
- Localisation : Le long de la côte, au dessus du pays des bigoudennes, aïe
Re: Impossible de lancer wvdial au boot
c'est bien Ubuntu sur un pi ?
Pourquoi choisir Ubuntu au lieu de Raspian ?
Pour l'instant wvdial appartient à quel utilisateur et group ?
Concernant visudo, j'avais dit une bêtise.
Pourquoi choisir Ubuntu au lieu de Raspian ?
Pour l'instant wvdial appartient à quel utilisateur et group ?
Concernant visudo, j'avais dit une bêtise.
[Pour bien commencer] Pour les nouveaux acquéreurs de Raspberry Pi (index de liens utiles)
Awesome Raspberry Pi
Awesome Raspberry Pi
Re: Impossible de lancer wvdial au boot
Je travaille habituellement sous Ubuntu. Mais c'est c'est bien Raspbian sur PI3.
wvdial appartenait à root.root, mais suite à un essai trouvé sur un forum il est maintenant en rwxr_xr_x root.dialout avec
pi et root dans dialout.
J'ai trouvé une solution farfelue qui marche 2 fois /3 environ. J'ai mis à la fin du .profile de pi :
Ce n'est pas fiable, dommage. De temps en temps il trouve le ttyUSB0 busy alors que j'ai tout viré.
J'ai l'impression qu'il faut retarder le démarrage de wvdial. Pourtant rc.local démarre en S05, le dernier niveau du run level.
J'ai même essayé de mettre mon script en S90 pour qu'il soit le dernier à démarrer.
wvdial appartenait à root.root, mais suite à un essai trouvé sur un forum il est maintenant en rwxr_xr_x root.dialout avec
pi et root dans dialout.
J'ai trouvé une solution farfelue qui marche 2 fois /3 environ. J'ai mis à la fin du .profile de pi :
Code : Tout sélectionner
sleep 5
lxterminal -e "sudo /usr/bin/wvdial" &
J'ai l'impression qu'il faut retarder le démarrage de wvdial. Pourtant rc.local démarre en S05, le dernier niveau du run level.
J'ai même essayé de mettre mon script en S90 pour qu'il soit le dernier à démarrer.
-
- Raspinaute
- Messages : 970
- Enregistré le : dim. 28 déc. 2014 15:28
- Localisation : Le long de la côte, au dessus du pays des bigoudennes, aïe
Re: Impossible de lancer wvdial au boot
regardez mon 1er post, il parlait déjà des droits de wvdial.
Je dirai qu'il manque le SUID dans son droit si on suit l'exemple
Je dirai qu'il manque le SUID dans son droit si on suit l'exemple
[Pour bien commencer] Pour les nouveaux acquéreurs de Raspberry Pi (index de liens utiles)
Awesome Raspberry Pi
Awesome Raspberry Pi
Re: Impossible de lancer wvdial au boot
Voici comment j'ai résolu mon problème.
Dans un 1er temps j'ai constaté que ce script, lancé toutes les mn avec la crontab de root, finissait par démarrer ma connexion :
Je l'ai amélioré en testant directement ppp0 avec celui ci :
Tout semble marcher.
Il me reste à "pousser" le dns sur mes clients, mais je vais ouvrir un autre post...
Merci pour votre aide qui a orienté mes recherches à un moment où je ne savais plus quoi faire.
Je ne sais pas où valider le "Résolu" ???
Dans un 1er temps j'ai constaté que ce script, lancé toutes les mn avec la crontab de root, finissait par démarrer ma connexion :
Code : Tout sélectionner
#! /bin/sh
echo "verif wvdial"
if pidof wvdial ; then
echo "$(date) wvdial tourne">>/home/pi/wvdial.log
else
echo "$(date) wvdial ne tourne pas, on le lance ...">>/home/pi/wvdial.log
sudo /usr/bin/wvdial>>/home/pi/wvdial.log
fi
Code : Tout sélectionner
#!/bin/bash
function check_cnx {
ifconfig | grep -o "$1"
}
if check_cnx ppp0 = "ppp0"; then
echo "$(date) ppp0 est UP">>/home/pi/wvdial.log
else
if pidof wvdial ; then
#je tue l'éventuel wvdial
sudo kill $(pgrep wvdial)
echo "wvdial tué">>/home/pi/wvdial.log
fi
#je relance
echo "$(date) On relance wvdial">>/home/pi/wvdial.log
sudo /usr/bin/wvdial 2>/home/pi/wvdial.err
fi
Il me reste à "pousser" le dns sur mes clients, mais je vais ouvrir un autre post...
Merci pour votre aide qui a orienté mes recherches à un moment où je ne savais plus quoi faire.
Je ne sais pas où valider le "Résolu" ???