Newsgroup: it.comp.os.linux.sys
Titolo: Debian e scheda di rete wireless [LUNGO]

Ok, ci siamo. Ho iniziato seriamente il mio percorso di apprendimento
di Linux, e ho deciso di farlo con Debian 4 Etch. Siccome amo
complicarmi la vita, ho scelto la versione specifica per il mio
processore (AMD64 5600+), e sono pronto ad affrontare uno per uno i
problemi che sicuramente salteranno fuori.
Ora sono qui per portare la mia piccola esperienza finora (nel caso
possa servire a qualcuno) e per fare qualche domanda. Chiedo scusa in
anticipo per la lunghezza spropositata del post.
Prima di tutto la configurazione hardware rilevante:
Scheda madre: Asus M2N32SLI Deluxe + Wireless (Realtek 8187)
              Bios Revision 1004
Scheda video: Bulk Manli, NVidia GeForce 8800GTX
Scheda audio: Creative Audigy 2 OEM
RAM         : 2x 1Gb Corsair Dominator DMX 1111Mhz
Storage: la scheda madre ha due controller SATA separati, per mettere a
disposizione 7 porte SataII e 1 porta eSata (il DVD è attaccato
all'unica porta IDE)
Controller 1: NVidia MediaForce 590i
   Porta 1 + 2: 2x HITACHI SataII 320Gb in raid0 (su cui c'è XP)
   Porte 3,4,5: vuote
   Porta 6: trasportata all'esterno con apposita "spallina" + cavo
            ICY BOX SataII -> Western Digital 500Gb
Controller 2: Silicon Image Sil3132
   Porta 1 -> Mobile Rack -> Samsung SataII 320Gb *DEDICATO A LINUX*
   Porta eSata vuota
Per l'installazione ho preferito disabilitare il controller MediaForce,
in modo da far vedere all'installatore l'unico disco fisso su cui
volevo lavorare. L'installazione è filata liscia, anzi, devo fare i
complimenti ai pacchettizzatori, dato che non mi aspettavo che il
controller Silicon venisse riconosciuto "al volo".
Finita l'installazione, ho riattivato il controller MediaForce, e ho
forzato l'avvio dal Silicon Image. Nulla da eccepire, l'avvio è
riuscito senza alcun problema, anche in presenza degli altri tre dischi
(mi aspettavo cambiasse qualcosa nella denominazione, ma non è
successo).
Ho cominciato a spulciare in Synaptic, curiosando tra i vari pacchetti
per vedere se c'era qualcosa di interessante. Mi sembra doveroso
avvisarvi di *evitare l'installazione di Powersave* (o di qualsiasi
cosa dipendente da esso): la sua attivazione blocca tutto,
probabilmente per un'incompatibilità a livello di BIOS, almeno nella
mia configurazione. Secondo avvertimento: una volta attivata la
modalità grafica, al tentativo di passare ad una console testuale *non
si vede più nulla*, e non è più possibile nemmeno ritornare in grafica,
stavolta credo per un problema di driver della scheda video (più tardi
faccio un salto sul sito di NVidia).
Ci sono due componenti che non sono stati riconosciuti: il primo è il
raid0 di MediaForce (i dischi vengono visti separatamente), ma finchè
evito di accedere ai due Hitachi non credo ci sia alcun problema. Anche
qui, il sito di NVidia mi saprà dire di più, ma per ora non mi
interessa accedere alla partizione di sistema di XP.
Il secondo, ed è la cosa che mi rode di più, è proprio la scheda di
rete wireless. A guardare la scheda madre sembra che il controller wlan
sia integrato, in realtà è soltanto agganciato ad uno degli zoccoli
USB... ma non è questo il problema. Dal sito della Realtek è possibile
scaricare i driver per linux, sia in forma binaria che in codice
sorgente:
http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=24&PFid=1&Level=6&Conn=5&DownTypeID=3&GetDown=false&Downloads=true
Peccato che gli unici binari Linux siano compilati per Debian 3.1 x86
(32 bit), e quindi la mia installazione non li vede manco morta...
Niente panico! Ho dato un'occhiata al pacchetto dei sorgenti, e per mia
fortuna ci sono una serie di script per automatizzare la compilazione e
il caricamento dei moduli nel kernel. Via di Synaptic per installare
GCC e compagnia bella, scompatto l'archivio scaricato (grazie Windows,
almeno questo) nella home, ed eseguo lo script makedrv. Magia! sei file
"ko" fanno la loro comparsa nella home directory. Tanto per provare,
tramite sudo eseguo lo script "wlan0up", ed ecco che ifconfig presenta
un'interfaccia wlan0. Via di iwconfig per impostare il SSID e sono in
rete... fantastico!
NOTA BENE: a causa dell'incompatibilità di driver Windows per una delle
schede wireless nella mia rete casalinga (una maledetta Zyxel PCI) non
posso impostare nessuna protezione, nè WEP nè WPA. Sul router ho fatto
in modo di consentire l'accesso solo a mac address conosciuti, ma prima
o poi dovrò decidermi a mettere a posto quella Zyxel...
Ora però avevo tutte le intenzioni di automatizzare la rilevazione e
l'attivazione della scheda wireless. Ho disattivato il tutto con lo
script "wlan0down" (che rimuove anche i moduli dal kernel) e guidato
dal mio intuito (LO SO, DOVEVO PRIMA CERCARE QUALCHE HOWTO) ho copiato
i vari moduli generati in questo modo:
ieee80211_crypt-rtl.ko
ieee80211_crypt_wep-rtl.ko
ieee80211_crypt_tkip-rtl.ko
ieee80211_crypt_ccmp-rtl.ko
ieee80211-rtl.ko
---> tutti in /lib/modules/<architettura>/kernel/net/wireless
(lì dentro c'erano dei moduli con nomi praticamente identici, a parte
il suffisso "rtl". Non ho fatto danno, vero?...)
r8187.ko in /lib/modules/<architettura>/kernel/drivers/net/wireless
(qui c'erano moduli specifici per altre schede wireless, e mi sta bene)
Controllati e sistemati anche proprietario, gruppo e permessi, lancio
come root "depmod -a" , e poi "modprobe -l -t net" per vedere se c'è
anche il modulo della realtek appena compilato... c'è!
Felice e contento, riavvio Linux per vedere se almeno l'interfaccia
wlan0 veniva installata... Tutto bloccato durante la rilevazione dei
dispositivi USB da parte del kernel :(
Che faccio? (a parte fustigarmi, poi entrare in single user ed
eliminare i "ko" che ho copiato prima)
Qual'è il modo più pulito per integrare dei moduli nella ricerca dei
dispositivi durante il boot di Debian? C'è qualche howto in
particolare?
Grazie mille per il tempo speso a leggere queste mie quattro cavolate.
-- 
Scientology: se la conosci la eviti, se la conosci non ti uccide...
http://xenu.com-it.net
 - 
http://xenu.freewinds.cx
 - 
http://www.xenu.net
(per rispondere personalmente leva IlDitoDalCulo)
---> 09 F9 11 02 9D 74 E3 5B D8 41 56 C5 63 56 88 C0 <---

 
Come non detto, ho provato a riavviare con l'intenzione di fare un po' di
pulizia, e funziona tutto...
Ora sto postando dalla mia nuova installazione Linux :D
beh, scusate il disturbo...

 
Dal sito che hai indicato risulta che esiste il driver per windows a 64 
bit (sei fortunato, perche' anche i driver 64 bit per windows 
scarseggiano).
Pertanto puoi provare ad usare ndiswrapper, proprio con quel driver.
Io ho fatto cosi'.
-- 
echo onailimissaM | awk 'BEGIN { FS = "" }
{ for (i = NF; i >= 1; i-- )
  printf $i }'; echo

 Io ho fatto cosi'.
Non mi è servito, alla fine la compilazione dei driver da sorgente ha
funzionato alla perfezione :)
