QL.túra

Kulturális smörgåsbord Esterházytól Wass Albertig, a gumicsizmától az iPad-ig, a Teletabiktól Sexpírig, a makrofágtól a mikrokontrollerig, miazmás...

Címkék

2000 (20) 2001 (6) 2002 (16) 2003 (164) 2004 (61) 2005 (40) 2006 (31) 2007 (28) 2008 (33) 2009 (175) 2010 (188) 2011 (201) 2012 (86) 2013 (40) 2014 (36) 2015 (26) 2016 (10) adáshiba (91) android (1) animáció (93) cygwin (3) film (410) gezarol (13) hájtek (159) hangoskönyv (32) ipad (17) klip (12) könyv (191) linux (29) színház (169) vers (17) windows (37) zene (111) Címkefelhő

+jegyzések

Most ...

... múlok .osan

bmi_tiny.png


... hallgatom
Szabó Magda: Régimódi történet
https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSqTmZEqlCRFgojyt52Q2n_qiMTyVlt-zJu-DpbNKVY6OQbBh4u


... olvasom
Alexander Steele (szerk.): Kezdő írók kézikönyve


... (Kik ezek? Kik ezek az embek? Kik ezek?)
profile for TrueY on Stack Exchange, a network of free, community-driven Q&A sites
free counters

[Hájtek] Wireless kapcsolat automatikus lekapcsolása Debian alatt (frissített)

2011.10.26. 11:00 | TrueY | Szólj hozzá!

Címkék: linux 2011 hájtek

Adva van egy laptop. Debian van rajta. Nagyon zavar, hogy amikor file-t másolok, akkor is néha a wireless lan-on keresztül másol, ha be van dugva a 100Base-T LAN. Hogyan lehet megoldani? Ennek jártam utána. A kiindulási alapnak a superuser.com egy nálam csak félig működő megoldását választottam. Némi küzdelem után azért sikerült működőképes alternatívát is kidolgoznom.

Az eredeti, félig működő megoldás az, hogy hozzunk létre két file-t, mint root (a kedvenc vi-unkkal, vagy ahogy tetszik), Majd "chmod 700"-at nekik.

/etc/network/ip-up.d/wlan

#!/bin/sh
# If eth0 goes up, disable wireless
if [ "$IFACE" = "eth0" ]; then
  dbus-send --system --type=method_call \
  --dest=org.freedesktop.NetworkManager \
  /org/freedesktop/NetworkManager \
  org.freedesktop.DBus.Properties.Set\
  string:org.freedesktop.NetworkManager \
  string:WirelessEnabled variant:boolean:false
fi

/etc/network/if-down.d/wlan

#!/bin/sh
# If eth0 goes down, enable wireless
if [ "$IFACE" = "eth0" ]; then
  dbus-send --system --type=method_call \
  --dest=org.freedesktop.NetworkManager \
  /org/freedesktop/NetworkManager \
  org.freedesktop.DBus.Properties.Set \
  string:org.freedesktop.NetworkManager \
  string:WirelessEnabled variant:boolean:true
fi

Csak a true/false-ben különböznek egymástól. A két szkriptet persze linkelhetjük is egymásra, de nem érdemes, mert sajnos nem működ rendesen. Csak az up fut le. A down valami miatt nem. A második sorba betettem, hogy a /tmp alá log-oljon valamit egy file-be, de down-ra semmi.

Utána próbálkoztam a /etc/network/interfaces módosításával. Ott is van egy up, pre-up, post-up és down, pre-down, post-down parancs minden interface-re. De ez is csak up-ra futott le. Hmmm... Valami nem kóser.

Nézzünk csak körül egy picit jobban. A /etc/network alatti if-pre-up.d, if-up.d, if-down-up.d, if-post-down.d könyvtárakban van egy be-soft-linkelt szkript, ami viszont mindig lefut. Ez a wpasupplicant. A környezeti változókat kiírattam a lefutáskor és azt láttam, hogy az IFACE='eth0'-val ezekre fut le: PHASE='post-up', PHASE='post-down'. Hurrá! Kerestem egy jó kis helyet (én az <<if [ "$IFACE" = lo ]; then>>-nel kezdődő if utánra tettem be)
if [ "$IFACE" = eth0 -a "$ADDRFAM" = NetworkManager ]; then
    if [ "$PHASE" = post-up ]; then on=false; else on=true; fi
    dbus-send --system --type=method_call \
        --dest=org.freedesktop.NetworkManager \
        /org/freedesktop/NetworkManager \
        org.freedesktop.DBus.Properties.Set \
        string:org.freedesktop.NetworkManager \
        string:WirelessEnabled variant:boolean:$on
fi
És ez már működik! Ha van ethernet, akkor kikapcsol a wireless lan, ha kihúzom a ethernet kábelt, akkor bekapcsol. Kb. 15 másodpercet még kell várni, amíg feljön az új kapcsolat és után még kb. 30 mp-t, hogy az új kapcsolatra váltsanak az alkalmazások. És induláskor is, ha feljön az eth0, akkor lelövi a wlan0-át. Esetleg a PHASE helyett lehetne használni a MODE környezet változót. Ez start, illetve stop értékeket vehet fel.

Még annyit változtattam, hogy a /etc/netwokk/interfaces file elején kiszedtem a kezelt lan interface-eket az auto kulcsszó utánról. Ez lett az eredmény:

auto lo
allow-hotplug eth0 wlan0
Ekkor a boot alatt nem kezd el a DHCP-vel szöszölni és egy kicsit gyorsul az (újra)indulás.

Néha-néha valami miatt a wlan nem jön fel, ha nincs induláskor bedugva az ethernet kábel. Ilyenkor root jogosultsággal a

/etc/init.d/network-manager restart

parancsot kell kiadni és az rendbe teszi a dolgokat. Legalább addig, amíg meg nem találom a probléma okát.

Kapcsolódjunk ki (és be) minden nap!

A bejegyzés trackback címe:

https://qltura.blog.hu/api/trackback/id/tr563234839

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása