détection de la désactivation du wifi sur un netbook

Bonjour
Je voudrai savoir si quelqu’un sait comment désactiver automatiquement l’interface wlan0 lorsque le wifi est désactivé (sur un eeepc, le 1015PEM pour être précis) et l’activer lors de son allumage?

Jusqu’ici, je procède de façon manuelle, mais c’est un peu lassant de lancer un terminal pour lancer un “su;ifdown wlan0 && ifup wlan0” à chaque fois que je rentre chez moi et que j’active le wifi.

En prime, si j’ai omis de débrancher mon netbook du réseau du boulot avant de le mettre en veille prolongée (le temps de rejoindre la gare ou je le rallume) je me retrouve avec le gateway du boulot qui pollue, ce qui me force à faire un ifdown eth0. Pas super pratique tout ce bazar quand même.
Dernier point qui me gêne, mais beaucoup moins que les autres celui-ci, c’est que j’aimerai configurer mon réseau pour qu’il utilise de manière automatique le proxy de l’endroit ou je me trouve s’il y en a un (en gros: mon boulot et mon école, mais pas chez moi).

Ah, et je veux me passer d’outil graphique pour ce faire. C’est un netbook, pas bien puissant et écran tout petit, donc j’évite de surcharger le matos et l’interface autant que faire se peut. Pour le moment, ma config est en dur dans le fichier /etc/network/interfaces, ce qui fonctionne très bien lors d’un allumage classique (si le wifi est déjà activé) ou a coup de ifdown/ifup.
J’ai bien appris l’existence de ifplugd, whereami, guessnet et netenv, mais aucun ne semble convenir complètement à ce que je souhaite faire (surtout au sujet du point le plus gênant: la touche d’activation/désactivation du wifi).
Et vue la prolifération des ordinateurs portables, je serais surpris que rien ne fasse déjà tout ça? D’autant que cette utilisation nomade doit être particulièrement fréquente (d’aucun diraient que ces machines sont faites pour)

[code]sudo find /etc -type f -exec grep -iw ‘wlan’ ‘{}’ ; -print

Motorola 802.11 bg WLAN (TER/GUSB3-E)

/etc/usb_modeswitch.d/148f:2578

AVM Fritz!Wlan USB Stick N

/etc/usb_modeswitch.d/057c:84ff

Zydas ZD1211RW WLAN USB, Sphairon HomeLink 1202 (Variant 1)

/etc/usb_modeswitch.d/0ace:2011

Zydas ZD1211RW WLAN USB, Sphairon HomeLink 1202 (Variant 2)

/etc/usb_modeswitch.d/0ace:20ff
event=button/wlan WLAN 00000080
/etc/acpi/events/asus-wireless-wlan
[/code]
dans cette liste, il n’y a (chez moi) que /etc/acpi/events/asus-wireless-wlan qui est intéressant :

cat /etc/acpi/events/asus-wireless-wlan event=button/wlan WLAN 00000080 action=/etc/acpi/asus-wireless.sh
Waou ! ça fait peur ! 2 lignes … suivant l “event” cité --> exécuter /etc/acpi/asus-wireless.sh

Bon! ya quoi dans ce script ?

[code]cat /etc/acpi/asus-wireless.sh
#!/bin/sh

Find and toggle wireless devices on Asus laptops

test -f /usr/share/acpi-support/state-funcs || exit 0

. /usr/share/acpi-support/state-funcs

VENDOR=cat /sys/class/dmi/id/sys_vendor | tr [:upper:] [:lower:] | cut -c1-4
test $VENDOR = “asus” || exit 0

if [ “$1” = “” ] ; then
toggleAllWirelessStates;
elif ( isAnyWirelessPoweredOn ) ; then
if [ “$1” = “off” ] ; then
toggleAllWirelessStates;
fi
else
if [ “$1” = “on” ] ; then
toggleAllWirelessStates;
fi
fi
[/code]

Ben pas grand chose en fait ! De ce que je peux voir :

/etc/acpi/asus-wireless.sh --> changer l’état “on” si “off”, et “off” si “on”
/etc/acpi/asus-wireless.sh off --> si une interface est dispo changer son etat (désactiver)
/etc/acpi/asus-wireless.sh on --> changer état interface

ça à l’air un peu tordu, mais t’as qu’a essayer, moi je marrête là parce que si ça ce trouve on n’a pas les même résultat dés ma première recherche avec find, alors …

sinon, pour tester si la carte wifi est on ou off, tu la repère d’adords :

lspci 00:00.0 Host bridge: Intel Corporation Mobile 945GME Express Memory Controller Hub (rev 03) 00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03) 00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03) 00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02) 00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02) 00:1c.1 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 2 (rev 02) 00:1c.3 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 4 (rev 02) 00:1d.0 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #1 (rev 02) 00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02) 00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02) 00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02) 00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) 00:1f.0 ISA bridge: Intel Corporation 82801GBM (ICH7-M) LPC Interface Bridge (rev 02) 00:1f.2 IDE interface: Intel Corporation 82801GBM/GHM (ICH7 Family) SATA IDE Controller (rev 02) 01:00.0 Network controller: RaLink RT2860 03:00.0 Ethernet controller: Atheros Communications AR8121/AR8113/AR8114 Gigabit or Fast Ethernet (rev b0)
chez moi, la carte wifi :

lspci |grep -iw 'ralink' 01:00.0 Network controller: RaLink RT2860
donc pour voir si elle est “on” :

lspci |grep -iqw 'ralink' && echo "Carte Wifi activée" Carte Wifi activée
si je la désactive :

lspci |grep -iqw 'ralink' && echo "Carte Wifi activée" $ echo $? 1
C’est un bon point de départ à creuser, tiens, voilà la pelle :mrgreen:

Merci pour la pelle, elle va m’être fort utile :023
J’ai lancé vite fait tes commandes, et en effet, dès le début ça diverge, mais ce n’est pas grave, ça me donne quelques idées sur ou creuser, ce qui me va parfaitement. (a part que j’ai jamais trop bidouillé les scripts, mais ça va être l’occasion, je comptais m’y mettre dans peu de temps de toute façon. Ca n’a pas l’air bien difficile a comprendre après tout.)

La suite ce soir en ce qui me concerne, donc.

[quote=“freem”]Merci pour la pelle, elle va m’être fort utile :023
J’ai lancé vite fait tes commandes, et en effet, dès le début ça diverge, mais ce n’est pas grave, ça me donne quelques idées sur ou creuser, ce qui me va parfaitement. (a part que j’ai jamais trop bidouillé les scripts, mais ça va être l’occasion, je comptais m’y mettre dans peu de temps de toute façon. Ca n’a pas l’air bien difficile a comprendre après tout.)

La suite ce soir en ce qui me concerne, donc.[/quote]
Oui, ça à l’air relativement simple, tu as du bol ! les scripts sont tous de petites tailles et ça ne vas pas trop dans tous les sens comme certains que j’ai tenté d’étudier … tenté seulement ! (c’était tentaculaire à chaque fois ! :017 )

Donc yes ! si tu voulais t’y mettre ça a l’air ideal.

Ce serait bien que tu donnes le résultat de find pour qu’on comprenne ce que tu fais.

Moi ça m’intéresse de mieux comprendre comment tout ça marche (ça marche nickel chez moi, donc je connais pas trop) et comme j’ai un eeePC 1000 H on devrait pas être trop alien . J’imagine que tu es sur une Debian Squeeze ? Edit: Ok j’ai vu debian unstable amd64 && Xfce 4.8 on différe déja ici, moi Intel 32 bits …

Bon, en plus de la pelle ( find ), j’ai marteau, burrin, tournevis, chalumeau pour t’aider (à hauteur de mes moyen modeste, somme toute) le cas échéant à ouvrir le coffre qu’on va trouver, les autres ont peut-être en plus un peu de TNT, batons de dynamite … :mrgreen:

Edit 2: suggestion : édite ton premier post pour y mettre au fur et à mesure un résumé de tes avancées ( par exemple en 1° ta carte reseau sans fil comme ça:

Résumé avancement :

1 -> Carte réseau sans fil + module carte (pilote):

lspci -k |grep -iw -A3 'ralink'|head -3 01:00.0 Network controller: RaLink RT2860 Subsystem: RaLink Device 2790 Kernel driver in use: rt2860

2 -> ce que tu auras trouvé de certain

n -> idem

Comme ça on pourra suivre dans ce premier post là où tu en es. Bon tu fais comme tu veux :mrgreen:

[quote=“freem”]Merci pour la pelle, elle va m’être fort utile :023
J’ai lancé vite fait tes commandes, et en effet, dès le début ça diverge, mais ce n’est pas grave, ça me donne quelques idées sur ou creuser, ce qui me va parfaitement. (a part que j’ai jamais trop bidouillé les scripts, mais ça va être l’occasion, je comptais m’y mettre dans peu de temps de toute façon. Ca n’a pas l’air bien difficile a comprendre après tout.)

La suite ce soir en ce qui me concerne, donc.[/quote]

Regarde de ce côté pour gérer tes différents réseaux wifi, couplé à “ifplugd” et “ifmetric” tu va pourvoir te faire plaisir
http://www.debian-fr.org/guessnet-et-wifi-t13839.html