Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2898 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Logiciels

  [Hotplug] pourquoi lance-t-il mon script plusieurs fois ? [Résolu]

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Hotplug] pourquoi lance-t-il mon script plusieurs fois ? [Résolu]

n°473743
Quercus
Posté le 07-05-2004 à 20:54:28  profilanswer
 

Salut,
 
    Mon problème est le suivant: ma connexion ADSL ne se lance qu'une fois sur 3, une fois ça marche, une fois ça marche pas tout dépend du bol que j'ai... Tout ça manque un peu de la fiabilité habituelle de mon OS préféré.
 
 J'ai fini après bien des recherches et quelques tests par isoler le problème ( si j'avais commencé par regarder syslog, ça serait allé plus vite...): il vient donc de Hotplug, qui est sensé charger le firmware du modem puis lancer la connexion par pppd.
 
 Le script de Hotplug est ok, il accomplit toutes ces tâches très bien, je l'ai testé en dehors de Hotplug, c'est à dire que je le lance au démarrage, après l'avoir placé dans init.d.
   Par contre, dès que je le replace dans Hotplug (qui est alors chargé de le lancer à la connexion de mom modem) ça chie, et voilà pourquoi

Code :
  1. May  6 22:02:40 Garulfo usb.agent[1435]:      speedtouch: loaded sucessfully
  2.   May  6 22:02:40 Garulfo usb.agent[1429]:      speedtouch: loaded sucessfully
  3.   May  6 22:02:40 Garulfo modem_run[1513]: modem_run version 1.2 started by root uid 0 
  4.   May  6 22:02:40 Garulfo modem_run[1513]: Another program/driver is already accessing the modem (interface 2 cannot be claimed)... 
  5.   May  6 22:02:40 Garulfo usb.agent[1422]:      speedtouch: loaded sucessfully
  6.   May  6 22:02:40 Garulfo modem_run[1528]: modem_run version 1.2 started by root uid 0 
  7.   May  6 22:02:40 Garulfo modem_run[1528]: Another program/driver is already accessing the modem (interface 2 cannot be claimed)... 
  8.   May  6 22:02:40 Garulfo modem_run[1531]: modem_run version 1.2 started by root uid 0 
  9.   May  6 22:02:40 Garulfo modem_run[1531]: Another program/driver is already accessing the modem (interface 2 cannot be claimed)...


 
   Quand c'est Hotplug qui lance le script, il essaie de le lancer plusieurs fois !!! Alors forcément ça ne plaît pas... Est-ce que quelqu'un aurait une petite idée du pourquoi du comment ? Et surtout de la façon de remédier au problème... Comment puis-je dire à Hotplug de lancer le script calmement UNE SEULE fois, et de laisser faire ensuite, sans s'énerver et relancer tout ça des milliers de fois ? Il me fait penser à ces gens un peu agés que je connais et qui cliquent comme des malades sur une icône pour lancer un truc qui met un peu de temps à s'afficher et qui s'étonnent de voir s'ouvrir tout d'un coup des milliers de fenêtres :pt1cable:


Message édité par Quercus le 20-07-2004 à 07:44:41
mood
Publicité
Posté le 07-05-2004 à 20:54:28  profilanswer
 

n°473804
udok
La racaille des barbus ©clémen
Posté le 07-05-2004 à 21:32:15  profilanswer
 

ls /sys/bus/usb/devices/
là dedans il doit y avoir plusieurs lien, et il essaie de charger ton driver pour chacun de ces liens (vraiment con, toujours pas régler, pb trouver chez plein de monde mais non, faut surtout pas le régler...)
donc faut que tu trouves le bon, par exemple :
ls /sys/bus/usb/devices/1-1
 
et quand tu le trouves tu mets au début de ton script :

case $DEVPATH in
bus/usb/devices/1-1)


pour le trouver le mieux est de commencer par mettre une ligne "echo $DEVPATH" ou un truc comme ça qui te permettra d'avoir une trace de ce que fait hotplug
sinon ne te gene surtout pas pour faire un bugreport, faut bien que le mainteneur comprenne qu'il y a un truc qui va pas :o


---------------
Non au projet de loi DADVSI ! (droits d'auteurs)
n°473849
Quercus
Posté le 07-05-2004 à 22:16:25  profilanswer
 

Ah une réponse, merci...
 
Alors je suis une grosse-chose-pas-bonne du tout en scripts... Ce que tu me proposes est sensé faire quoi ? ajouter une condition à l'exécution du script ? style: "tu fais ce qui suit en cas d'action dans le périphérique, et seulement si ce périphérique est /bus/usb/devices/1-1", c'est ça ?
 
 Mon script, c'est celui du paquet debian du speedtouch, et il finit par

Code :
  1. case "$ACTION" in
  2.     add)
  3.         load_firmware
  4.         start_networking
  5.         setup_remover
  6.     ;;
  7. esac

, tout ça précédé de la "description" de load_firmware, de start_networking et setup_remover . Comment puis-je intégrer ce que tu me dis dans ce script ? quelque chose du style

Code :
  1. case $DEVPATH in
  2. bus/usb/devices/1-1)
  3. case "$ACTION" in
  4.     add)
  5.         load_firmware
  6.         start_networking
  7.         setup_remover
  8.     ;;
  9. esac

?? Je n'y connais rien, mais ça me paraît bizarre... il manque un esac déjà si je pige bien un minimum... En fait, je verras bien un

Code :
  1. case "$ACTION" in bus/usb/devices/1-1
  2.     add)
  3.         load_firmware
  4.         start_networking
  5.         setup_remover
  6.     ;;
  7. esac

mais je ne sais pas du tout si ça existe  :pt1cable: . Serait-ce trop te demander d'être plus précis pour le pauvre inculte que je suis  :jap:  
 
Autre chose d'ailleurs... ls /sys/bus/usb/devices/ ne me donne que "/sys/bus/usb/devices/". Par contre dans /sys/bus/usb, j'ai des répertoire 001 002 003 004, et le 003 contient deux fichiers 001 et 003.  Pourquoi on n'a pas la même architecture de fichiers toi et moi ? je suis en 2.6.5 et toi ? il y a eu un changement récent ? enfin bref, le speedtouch m'est donné comme 003 sur le bus 003 quand je fais cat /sys/bus/usb/devices ( je le comprends comme ça du moins)... le bus/usb/devices/1-1 que tu proposes devrait donc être changé en /sys/bus/usb/003/003 ?


Message édité par Quercus le 07-05-2004 à 22:17:41
n°473853
udok
La racaille des barbus ©clémen
Posté le 07-05-2004 à 22:21:33  profilanswer
 

commence par faire un echo $DEVPATH

n°473868
Quercus
Posté le 07-05-2004 à 22:46:32  profilanswer
 

udok a écrit :

commence par faire un echo $DEVPATH


 
cette commande ne me donne rien...  :sweat:

n°473897
Quercus
Posté le 07-05-2004 à 23:25:49  profilanswer
 

Quercus a écrit :

cette commande ne me donne rien...  :sweat:


Et si j'essaie de le coller dans le script c'est l'horreur... Le modem tente de s'allumer, et il meurt. Dingue l'effet de quelques lettres dans un script... Les deux diodes sont éteintes, je peux le débrancher et le rebrancher si je veux, rien n'y fait...

n°475860
Quercus
Posté le 11-05-2004 à 09:42:41  profilanswer
 

Ah Udok, pourquoi m'as tu abandonné, pourquoi, pourquoi... :sweat: . Bon j'ai un peu abandonné Hotplug + Speedtouch pour l'instant mais j'aimerais bien réussir à les faire fonctionner, ça serait pas mieux, mais j'aime pas qu'on me résiste, et j'aime pas ne pas comprendre. Il y a un truc qui ne file pas droit dans ma geekitude, et ça me stresse  :D  
   J'ai essayé de trouver quelque part quelqu'un qui a le même problème, puisque tu dis ( et je te crois  :) ) que c'est un problème connu de Hotplug cette pluri-détection, mais sans grand succès: à peine un thread sur la mailing-liste de Hotplug où le mainteneur dit que la dernière version devrait régler le problème du mec qui a soumis un bug. Tu as un ou deux liens où on parle de ce problème à m'envoyer ?
 
   Et puis je ne suis quand même pas le seul à utiliser un speedtouch et Hotplug si ? Si quelqu'un utilise ces deux là avec bonheur, j'aimerais qu'il le dise, ça me rassurerait :). Et on pourrait essayer de voir ce qui ne va pas particulièrement chez moi  :jap:

n°475867
udok
La racaille des barbus ©clémen
Posté le 11-05-2004 à 09:47:38  profilanswer
 

moi j'ai abandonné le speedtch sous linux parce qu'il commençait à m'emmerder avec tous ces bug (bug dans usbfs qui fait un joli kernel oops quand tu débranches la bestiole)
bref, quand tu regles un pb, y-en a un autre qui arrive donc ça saoule :/
 
et pour être un geek on lit la doc parce que les questions bateau que tu me poses, c'est lourd ...
genre echo $DEVPATH te donne rien ? mais tu regardes où au juste ? j'espere que tu t'attends pas à ce qu'il t'ouvre une popup pour te montrer le message :o
si tu trouves pas, tu peux aussi faire :
echo $DEVPATH >> /tmp/speedtouch
puis tu lis le fichier quand le boot est fini

n°475882
Quercus
Posté le 11-05-2004 à 10:10:16  profilanswer
 

 Oulah, pas la peine de s'énerver comme ça, je t'agresse pas moi, au contraire.
  Je m'attendais pas à ce qu'il m'ouvre un popup mais à ce qu'il me l'affiche effectivement dans le terminal quand je tape la commande dans un terminal: quand tu tapes "echo bonjour", il t'affiche bonjour, je suis pas doué peut-être mais ça paraît pas si illogique que ça. Et en le mettant dans le script je pensais pouvoir retrouver la sortie dans syslog.  
  Et on peut être geek sans tout connaître et même sans être doué. C'est qu'il serait vexant le bougre. Je comprends bien que c'est énervant les questions bateaux, mais je pense pas être de ceux qui ne lisent rien et posent la question sans avoir cherché. J'oublie parfois de regarder un syslog, mais c'est parceque je pars sur une fausse piste et que je ne pense même pas que la réponse à mon problème peut se trouve dedans... Enfin bref, tout ça pour dire que j'ai des excuses :).
   Je vais tenter de mettre la sortie d'echo dans un fichier comme tu le suggères, on verra. Mais comme je le disais plus haut, l'ajout de echo dans le script avait un effet assez étrange... demander la sortie dans un fichier changera peut-être ça... Je tente ce soir.
 
  Merci quand même de t'intéresser à mon problème, malgré ma lourdeur.

n°475890
udok
La racaille des barbus ©clémen
Posté le 11-05-2004 à 10:26:55  profilanswer
 

en fait le echo ne s'affiche pas dans syslog mais dans une console (en général tty1), donc faut trouver le bordel dans les messages de boot, ce qui est pas forcément évident
moi pour les voir je démarrais en runlevel 1, comme ça ils étaient plus facile à trouver, mais la redirection dans un fihier est plus pratique
et je gueule parce que le rediriger dans un fichier tu aurais pu le trouver tout seul :o


---------------
Non au projet de loi DADVSI ! (droits d'auteurs)
mood
Publicité
Posté le 11-05-2004 à 10:26:55  profilanswer
 

n°476084
udok
La racaille des barbus ©clémen
Posté le 11-05-2004 à 13:41:57  profilanswer
 

http://lkml.org/lkml/2004/5/11/79
:lol:
faut vraiment être patient avec le speedtch quand même :pfff:


---------------
Non au projet de loi DADVSI ! (droits d'auteurs)
n°476569
Quercus
Posté le 11-05-2004 à 21:10:24  profilanswer
 

Hop, j'ai du neuf: j'ai donc essayé et enfin réussi  ;) ce que tu me proposais, et voici le résultat

Code :
  1. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.1
  2. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0
  3. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.2
  4. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.1
  5. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0
  6. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.2
  7. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.2
  8. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0
  9. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.1


 
Ca c'est la sortie de echo $DEVPATH, après avoir inséré cette commande dans le script speedtouch de Hotplug, pour un seul démarrage ( et trois process modem_run apparaissent dans syslog)...
 
   Je m'appretais à te demander si le morceau de script que tu proposais résoudrait le problème ( puisque j'avais là aussi trois fois la même chose à un poil près...) quand je me suis dit que j'allais tenter le noyau 2.6.6, histoire de... et hop, la sortie de echo $DEVPATH donne

Code :
  1. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.0
  2. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.1
  3. /devices/pci0000:00/0000:00:1d.2/usb3/3-1/3-1:1.2

et je n'ai plus mes trois modem_run dans le syslog. Magique...
 
 Bon par contre  j'ai le même message d'erreur que le mec dont tu as balancé le sujet, mais la connexion est toujours là, comme pour lui, alors je m'inquiète pas pour l'instant...
 
Juste par curiosité, pour apprendre un peu, et si ça t'énerve pas trop, comment aurais tu intégré la condition sur DEVPATH dans mon script ?


Message édité par Quercus le 11-05-2004 à 21:11:00
n°476688
udok
La racaille des barbus ©clémen
Posté le 11-05-2004 à 22:47:05  profilanswer
 

comme tu as fait avec un "esac" en plus tout à la fin

n°476805
Quercus
Posté le 12-05-2004 à 09:15:23  profilanswer
 

Ok, merci !  :jap:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Logiciels

  [Hotplug] pourquoi lance-t-il mon script plusieurs fois ? [Résolu]

 

Sujets relatifs
[resolu] Site inaccessible sous mon linux[RESOLU]droits Linux d'1 dossier monté a partir d'un serveur windows
[resolu] Debian, ext3 reboot en continue[RESOLU] Convertir un mount dans fstab
Crash du son ( AC'97 Via 8235 et Mandrake 9.2) [résolu]recherche de disque dur inutile [resolu]
[Mandrake 10] crash de noatun [Résolu]Comportement farfelu de mount (vfat) sur Mandrake 9.2 [résolu]
Comment faire un script de connexion ADSL ?Style Kde et application Non-kde [ Resolu ]
Plus de sujets relatifs à : [Hotplug] pourquoi lance-t-il mon script plusieurs fois ? [Résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR