HTML

Bagoj úr blogja

Kíváncsi Bagoj befigyel a Linux belsejébe, illetve különféle Linux terjesztéseket próbál ki. Ha jó napja van, scriptet ír Neked.

Friss topikok

Arch Linux + wifi

2012.05.28. 22:36 bagoj ur

Valószínűleg többen simán le fognak hülyézni, hogy a nagyon kényelmes, jól kezelhető és grafikus Network Manager helyett én már megint szkripteztem. Ennek az az oka, hogy sok időt töltöttem el fekete hátterű konzolok előtt, és még mindig jobban kézreáll a parancssor, ráadásul élvezettel tölt el egy-egy újabb szkriptecske létrehozása.

Nem mértem, hogy a gép fogyasztása vagy a boot idő kevesebb lett volna-e a saját szkripttel, ez nem is érdekelt különösebben, de nem hiszem hogy mérhető különbség lenne. Fogjuk fel különcségnek az alábbiakat.

A lényeg tehát, hogy WPA2 titkosítás van itthon, a wpa_supplicant nevű csomagot kell beizzítani hozzá, és be kell konfigurálni a /etc/wpa_supplicant.conf-ban:

ctrl_interface=/var/run/wpa_supplicant
eapol_version=1
ap_scan=1
fast_reauth=1
bss_max_count=100

network={
    ssid="Linksys"
    psk="titkos"
    priority=2
}

network={
        ssid="D-Link"
        psk="titkos2"
        priority=2
}
Mint látható, ahány hálózat van, mindegyiknél meg kell adni az SSID-t (a hálózat nevét), és a jelszót. A prioritás sorrendjében halad, illetve ha nem tud felcsatlakozni az elsőhöz, megy a következőre stb.

Jogos észrevétel, hogy ha olyan wifi hálózatra kell csatlakoznom, amelyet nem ismerek előre, akkor nem tudom előre meghatározni a fenti fájl tartalmát. Aki sokat rohangál és mindenfelé felcsatlakozik, az tegye fel a Network Managert.

Az alábbi szkript izzítja a hálózatot, /etc/rc.d/wifi néven fut, és persze a /etc/rc.conf-ba be kell írni a futtatandó szolgáltatások közé azt is, hogy @wifi.

#!/bin/bash

ip link set wlan0 up
wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant.conf
E=0
until [ $E == 5 ]; do
    dhcpcd wlan0
    if [ $? != 0 ]; then
        let E $((E++))
        W=$((E*10))
        echo "Waiting for $W seconds..."
        sleep $W
    else
        exit 0
    fi
done
Állj, állj... mi ez az until...do rész már megint?

Nos, menjünk talán sorban:

  1. Az "ip link..." sor felhúzza up-ba logikailag a wlan0 interfészt, vagyis az én vezeték nélküli hálózati interfészemet
  2. A "wpa_supplicant..."-es sor meghívja a WPA segéderőt, "aki" elintézi az Access Pointhoz való csatlakozást, azonosítással egyetemben
  3. Itt egy kis ciklus következik, mert nekem nem túl gyors a DHCP, néha nem sikerült elsőre IP-t kapnom, ami bosszantó volt, hiszen a grafikus felület közben elindul és még csak nem is láttam, hogy probléma van, utána parancssor, bogarászás stb. Meguntam. Ez a kis ciklus kér egy IP-t, ha ez sikertelen, akkor egyre többet (10,20,30,40,50 másodpercet) vár, és újra próbálkozik.

Ha igazán paranoid lennék, az egészet betenném még egy ciklusba, és mondjuk 5 percenként néznék egy ping-et egy jól ismert címre, és ha az sikertelen, akkor ismét megpróbálom a csatlakozást. De ez egy laptop, nem fogom a drága akssiidőt ilyenekkel tölteni... ha nincs hálózat boot-kor, később majd futtatom a szkriptet kézzel. :)

Hát, ennyi. Nem nagy dolgok, de ezzel (is) töltöttem az Arch installt követő időszakot. Egy démonnal (a NetworkManager-rel) kevesebb fut nálam, ez is valami.

Szólj hozzá!

Címkék: linux wifi hogyan parancssor arch

A bejegyzés trackback címe:

https://bagojur.blog.hu/api/trackback/id/tr394551770

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