Linux sistēmās neatbalstītu tīkla karšu darbināšana

Vakar nācās Mandriva Linux datoram pieslēgt dīvainu Sweex WLAN karti. Mandriva to pat atpazina, bet laipni paskaidroja, ka download versijā to neuztur. Varot pats kompilēt kerneli ar šīs kartes atbalstu vai iegādāties community versiju. Tā kā dators bija absolūta miskaste (Celeron 400 MHz), nebija nu nekādas vēlmes kompilēt kodolu, pie tam vēl jo mazāk – Mandriva sistēmā. Sāku domāt citus variantus.

Risinājums atradās (kā jau parasti). Tiesa, šoreiz tik ļoti caur b.d., ka pats biju pārsteigts. Pirmo reizi nolēmu izmēģināt ndiswrapper. Tiem, kas nezina – tas ir rīks, kas “imitē” Windows sistēmu, pareizāk sakot – to šīs sistēmas daļu, kas atbild par tīkla karšu draiveriem. Rezultāts – itin veiksmīgi varam izmantot sīkmīkstās OS tīkla karšu draiverus.

Mandriva savu draudzīgumu pierādīja, piedāvājot uzinstalēt ndiswrapper, kā arī instalēt Windows draiveri.  Atpakojam draiveri Windows datorā, tos 4 failus, kas reāli ir draiveris (viens no tiem ir PRISMA00.INF – tie visi atrodas vienā direktorijā), iekopējam ārējā datu nesējā un instalējam Linux datorā.

Diemžēl ar to viss nebeidzās. Tiesa, šajā etapā var nokonfigurēt arī IP adresi (vai izvēlēties DHCP), ievadīt maršrutēšanas informāciju utt. ndiswrapper tiek konfigurēts, lai automātiski sistēmas ielādes laikā ielādētu arī atbilstošo kodola moduli. Pēc tam komandrindā jāizpilda komandas (ja vēlamies, lai karte darbotos vienmēr, tās jāizpilda pie datora ielādes – kādā no startēšanās skriptiem):

# iwconfig wlan0 mode Managed
# iwconfig wlan0 key open (PIEZĪME: vai restricted) XXXXXX
# iwconfig wlan0 essid “ACCESSPOINTID”
# ifup wlan0

Kaut kā tā. Starp citu, ja vēlamies ndiswrapper konfigurēt manuāli, jādara šādi:

# ndiswrapper -i PRISMA00.inf
# ndiswrapper -l
Installed ndis drivers:
prisma00 driver present, hardware present
# modprobe ndiswrapper

Pēc tā sistēmā parādīsies tīkla interfeiss wlan0.