Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 21/02/2008, à 16:32

Duke Nono

[RESOLU] script réactivation wifi

Bonjour.

J'ai quelques problèmes avec mon wifi : au bout d'un moment, parfois toute une journée, parfois une heure, la connexion à mon réseau wifi passe à 0%. Impossible alors de me reconnecter proprement sans redémarrer l'ordinateur ou alors en faisant les manipulations suivantes...

1. je quitte Wicd dans l'icône de notification
2. je tape dans un terminal

sudo modprobe -r ipw3945

3. je tape dans un terminal

sudo modprobe -a ipw3945

4. je fais alt+F2 et je relance Wicd avec

/opt/wicd/tray.py

J'aimerais donc avoir un script qui me fasses tout ça en une commande simple. Mais comme je n'y connais rien, je ne sais même pas arrêter Wicd comme ça.
Pour infos, je suis sous Gutsy et la carte wifi est une Intel PRO/Wireless 3945ABG.

Merci.

Dernière modification par Duke Nono (Le 22/02/2008, à 10:14)

Hors ligne

#2 Le 21/02/2008, à 17:02

geenux

Re : [RESOLU] script réactivation wifi

un truc du genre

#!/bin/bash
killall wicd
modprobe -r ipw3945 
modprobe -a ipw3945 
wicd &
/opt/wicd/tray.py &

C'est pas sur que ça marche mais tu peut toujours essayer.
Tu enregistre le fichier dans un répertoire répertorié par le PATH (par exemple /usr/bin/), tu le rend exécutable et tu le lance en tapant son nom

Dernière modification par geenux (Le 21/02/2008, à 17:04)

Hors ligne

#3 Le 21/02/2008, à 17:05

jean bono

Re : [RESOLU] script réactivation wifi

salut
je crois pas qu'il faille la ligne avec wicd
la commande pour le lancer c'est juste
/opt/wicd/tray.py

sinon ca a l'air bien
tu enregistres ca dans un fichier vierge aue tu renommes wifi.sh
ensuite tu fais un lanceur sur le bureau avec la commande
bash /home/user/wifi.sh
ca devrait le faire

Hors ligne

#4 Le 21/02/2008, à 17:08

geenux

Re : [RESOLU] script réactivation wifi

je sais pas trop je connais pas wicd. Je me suis dit que wicd devait lancer le programme et l'autre ligne, le lanceur. Enfin le mieu essaye.

Je pense que tu as raison:
le bon script doit donc être

#!/bin/bash
killall wicd
modprobe -r ipw3945 
modprobe -a ipw3945 
/opt/wicd/tray.py &

Il faut que tu le lance en root (sudo)

Hors ligne

#5 Le 21/02/2008, à 17:12

jean bono

Re : [RESOLU] script réactivation wifi

ah oui ca doit etre en root
on peut faire une commande dans un lanceur du genre bash gksudo ...?

Hors ligne

#6 Le 21/02/2008, à 17:19

xelator

Re : [RESOLU] script réactivation wifi

jean bono a écrit :

ah oui ca doit etre en root
on peut faire une commande dans un lanceur du genre bash gksudo ...?

oui :
commande :
gksu /le/chemin/du/fichier/./wifi.sh

et il faut le rendre exécutable aussi.

(sudo chmod +x le_fichier)

Hors ligne

#7 Le 21/02/2008, à 17:20

geenux

Re : [RESOLU] script réactivation wifi

tu peut oui, c'est un script shell banal donc tu le lance comme tu veut. Il vaut mieu éviter gksudo, normalement c'est réservé aux applications graphiques, même si je n'ai jamais vu la différence

[edit] tu te complique la vie:
sudo chemin/vers/le/fichier/wifi.sh

Dernière modification par geenux (Le 21/02/2008, à 17:21)

Hors ligne

#8 Le 21/02/2008, à 17:22

xelator

Re : [RESOLU] script réactivation wifi

geenux a écrit :

tu peut oui, c'est un script shell banal donc tu le lance comme tu veut. Il vaut mieu éviter gksudo, normalement c'est réservé aux applications graphiques, même si je n'ai jamais vu la différence

oui mais dans un lanceur, sudo va pas marcher ...

Hors ligne

#9 Le 21/02/2008, à 17:23

geenux

Re : [RESOLU] script réactivation wifi

ok j'ai jamais essayé. Je viens d'apprendre quelque chose.

Hors ligne

#10 Le 21/02/2008, à 17:25

xelator

Re : [RESOLU] script réactivation wifi

geenux a écrit :

ok j'ai jamais essayé. Je viens d'apprendre quelque chose.

enfin je suis pas sur mais je crois ... ou alors faut cocher "lancer dans un terminal"

Hors ligne

#11 Le 21/02/2008, à 17:25

Duke Nono

Re : [RESOLU] script réactivation wifi

alors le problème c'est que Wicd ne correspond pas au processus wicd, du coup impossible de le tuer par

killall wicd

du coup je ne peux pas décharger le pilote...
Sinon pour le script, c'est pas loin de ce que j'avais imaginé wink

Hors ligne

#12 Le 21/02/2008, à 17:27

xelator

Re : [RESOLU] script réactivation wifi

tu peux nous donner un
"ps aux | grep icd"
avec wicd qui tourne pour qu'on voit comment il s'appelle ...

Hors ligne

#13 Le 21/02/2008, à 17:29

geenux

Re : [RESOLU] script réactivation wifi

kill -9 $(ps -x|grep wicd|cut -f2 -d' ')

un truc du genre devrait marcher

il faudra peut-être faire une boucle si il y a plusieurs id

Dernière modification par geenux (Le 21/02/2008, à 17:30)

Hors ligne

#14 Le 21/02/2008, à 17:34

geenux

Re : [RESOLU] script réactivation wifi

IFS="
"
for i in $(ps x|grep wicd|cut -f2 -d' ');do
     kill -9 $i
done

pas testé
[edit] je viens de tester en remplaçant wicd par firefox: ça marche

Le script complet (teste et dis si ça marche)

#!/bin/bash
IFS="
"
for i in $(ps x|grep wicd|cut -f2 -d' ');do
     kill -9 $i
done
modprobe -r ipw3945 
modprobe -a ipw3945 
/opt/wicd/tray.py &

Dernière modification par geenux (Le 21/02/2008, à 17:43)

Hors ligne

#15 Le 21/02/2008, à 18:56

Duke Nono

Re : [RESOLU] script réactivation wifi

xelator a écrit :

tu peux nous donner un
"ps aux | grep icd"
avec wicd qui tourne pour qu'on voit comment il s'appelle ...

Alors ça donne

root      5664  0.5  0.2  16108  4796 ?        S    17:53   0:00 /usr/bin/python /opt/wicd/daemon.py
dukenono  6038  0.8  0.5  21464 12368 ?        S    17:54   0:00 /usr/bin/python /opt/wicd/tray.py
dukenono  6270  0.0  0.0   2996   780 pts/0    S+   17:54   0:00 grep icd

@geenux, le script ne marche pas, ça ne coupe pas Wicd...

Dernière modification par Duke Nono (Le 21/02/2008, à 18:57)

Hors ligne

#16 Le 21/02/2008, à 19:09

geenux

Re : [RESOLU] script réactivation wifi

et en faisant

#!/bin/bash
IFS="
"
for i in $(ps -x|grep wicd|cut -f2 -d' ');do
     kill -9 $i
done
modprobe -r ipw3945 
modprobe -a ipw3945 
/opt/wicd/tray.py &

je viens de copier coller le code que je t'avais donné et ça a crashé ma session! Essaye avec le code au dessus (j'ai remplacé ps x, par ps -x et ça semble marcher)

[edit] en fait ça ne change rien, j'avais juste oublié de mettre un nom après le grep, du coup il a tout fermé.

Dernière modification par geenux (Le 21/02/2008, à 19:13)

Hors ligne

#17 Le 21/02/2008, à 19:15

Duke Nono

Re : [RESOLU] script réactivation wifi

le dernier script a l'air de fonctionner big_smile

Il ne me reste qu'à attendre que mon réseau descende à 0% pour en apprécier pleinement l'efficacité. Je vous donnerai un retour à ce moment-là...

En tout cas merci pour le dérangement wink

Hors ligne

#18 Le 21/02/2008, à 19:24

Duke Nono

Re : [RESOLU] script réactivation wifi

geenux a écrit :

[edit] en fait ça ne change rien, j'avais juste oublié de mettre un nom après le grep, du coup il a tout fermé.

Mon dernier essai, je l'ai fait après avoir redémarré, c'est peut-être pour ça que ça a marché. J'avais tenté plusieurs choses avant, et du coup Wicd ne se lançait plus du tout...

Hors ligne

#19 Le 21/02/2008, à 19:25

geenux

Re : [RESOLU] script réactivation wifi

Mais de rien!
Si quelqu'un pouvait m'éclairer à propos d'un truc que je ne comprend pas dans la commande ps: Pourquoi ps -x me donne un warning a chaque fois (j'ai lu dans le man que il fallait faire ps x mais alors pourquoi dans mon script ça marche avec ps -x et pas avec ps x)

Hors ligne

#20 Le 21/02/2008, à 21:39

willy78

Re : [RESOLU] script réactivation wifi

passe seulement par le driver libre:

echo 'blacklist ipw3945' | sudo tee -a /etc/modprobe.d/blacklist
sudo rmmod ipw3945
sudo modprobe iwl3945
echo 'iwl3945' | sudo tee -a /etc/modules

Dernière modification par willy78 (Le 21/02/2008, à 21:39)


Quelques tutos pour le wifi sous Ubuntu:
http://wlety.free.fr/forum

Hors ligne

#21 Le 21/02/2008, à 22:03

Duke Nono

Re : [RESOLU] script réactivation wifi

Alors la méthode de willy78 ne fonctionne pas, je n'ai plus de wifi du tout si je fais ça... je suis donc revenu à ipw3945.

J'ai aussi eu des problèmes avec le script de geenux... du coup j'ai cherché un peu quel processus me gênait pour Wicd et comment l'arrêter et le relancer. Finalement je pense avoir un script qui fonctionne :

#!/bin/bash
kill /opt/wicd/tray.py
/etc/init.d/wicd stop
modprobe -r ipw3945
modprobe -a ipw3945
/etc/init.d/wicd start
/opt/wicd/tray.py &

Celui-ci a bien l'effet escompté, apparemment. Je vais le tester un peu pour être sûr que ça marche à tous les coups.

Hors ligne

#22 Le 21/02/2008, à 22:06

geenux

Re : [RESOLU] script réactivation wifi

Ok parfait!
Pour mon script, je sais pas j'ai juste testé avec firefox comme essai et ça tuait bien tout firefox. Enfin bref tant que tu as réussi.

Hors ligne

#23 Le 21/02/2008, à 22:12

willy78

Re : [RESOLU] script réactivation wifi

avec le module iwl3945 l'interfaces ne s'appel plus eth1 mais wlan0 peut-etre qu'il faut changer certains paramètres dans wicd!
verifie l'existence du module iwl3945 en faisant:

modinfo iwl3945

voilà ce que m'affiche cette commande

willy@laptop:~$ modinfo iwl3945
filename:       /lib/modules/2.6.22-14-generic/ubuntu/wireless/iwlwifi/iwlwifi/origin/iwl3945.ko
license:        GPL
author:         Copyright(c) 2003-2007 Intel Corporation
version:        1.1.0
description:    Intel(R) PRO/Wireless 3945ABG/BG Network Connection driver for Linux
srcversion:     B019B21F27D52A5DCDDA000
depends:        iwlwifi_mac80211
vermagic:       2.6.22-14-generic SMP mod_unload 586
parm:           antenna:select antenna (1=Main, 2=Aux, default 0 [both]) (int)
parm:           disable:manually disable the radio (default 0 [radio on]) (int)
parm:           hwcrypto:using hardware crypto engine (default 0 [software])
(int)
parm:           debug:debug output mask (int)
parm:           disable_hw_scan:disable hardware scanning (default 0) (int)
parm:           queues_num:number of hw queues. (int)
parm:           qos_enable:enable all QoS functionality (int)

Dernière modification par willy78 (Le 21/02/2008, à 22:39)


Quelques tutos pour le wifi sous Ubuntu:
http://wlety.free.fr/forum

Hors ligne

#24 Le 21/02/2008, à 22:13

Duke Nono

Re : [RESOLU] script réactivation wifi

en fait j'ai mélangé, les deux, c'est mieux... cool

#!/bin/bash
IFS="
"
for i in $(ps -x|grep wicd|cut -f2 -d' ');do
     kill -9 $i
done
/etc/init.d/wicd stop
modprobe -r ipw3945
modprobe -a ipw3945
/etc/init.d/wicd start
/opt/wicd/tray.py &

mais je crois bien que je peux pas déchargé ipw3945 sans /etc/init.d/wicd stop (pour le démon si j'ai bien compris roll).

Edit : pour willy78, je regarderai demain... merci de vos conseils à tous.

Dernière modification par Duke Nono (Le 21/02/2008, à 22:14)

Hors ligne

#25 Le 21/02/2008, à 22:50

geenux

Re : [RESOLU] script réactivation wifi

oui je pensait bien qu'il fallait tuer le démon aussi.
donc en fait la partie tuer wicd marchait bien, c'était le reste le problème.

Hors ligne