La Community Italiana di Linux CentOS e' lieta di averti tra noi , CentOS-Italia.Org e' un risorsa di guide e forum dal principiante al sistemista senior.
La registrazione e' gratuita e ti consente di avere pieno accesso alle risorse di CentOS-Italia.org , come uso della ricerca avanzata , le funzioni interattive del portale e visualizzare i links nei post.
Gli utenti registrati non visualizzano gli ads, quindi registrati subito se non l'hai gia fatto.
Lo staff di CentOS-Italia.Org cerca di rendere la community un posto piacevole e il piu' produttivo possibile, invitiamo quindi i nuovi utenti a leggere le regole base.
Per info o problemi di registrazione scrivere a centos (at) centos-italia.org .
Scritto da kernel 19 Aprile 2008, 11:06:0013536 VisiteGradimento: (3 voto/i)Stampa
Vederemo qui come installare su CentOS 5.1 una scheda PCI wifi con chipset Prism ISL3886.<br />
Questo chip e' abbastanza diffuso e viene usato da diverse compagnie, e' anche usata su macchine HP e viene rilasciato da HP con il codice HP 5187-6696<br />
<br />
questo e' output lspci della scheda :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code" style="overflow: scroll;">
<pre style="margin-top: 0pt; display: inline;">01:00.0 Network controller: Intersil Corporation ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (rev 01)</pre>
</div>
<br />
qua invece lspci -vvv<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code" style="overflow: scroll;">
<pre style="margin-top: 0pt; display: inline;">01:00.0 Network controller: Intersil Corporation ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow] (rev 01)<br /> Subsystem: Accton Technology Corporation WN4201B<br /> Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- Stepping- SERR- FastB2B-<br /> Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- </pre>
</div>
<br />
Questa invece e' la foto :)<br />
<br />
<img width="640" height="480" alt="" src="/tp-images/Image/pci-wifi-isl3886.jpg" /><br />
<br />
Il modulo di questa scheda e presente dal kernel 2.6.24 in poi , ci sono quindi 2 possibilita' visto che CentOS usa il kernel 2.6.18 o ricompilare il nuovo kernel 2.6.24 o superiore oppure prendere il moduli p54pci, p54common e mac80211 dal kerl source di kernel.org compilarli e aggiungerli.<br />
<br />
In questa guida vederemo come ricompilare il kernel col il nuovo stabile 2.6.25 .<br />
<br />
in tutti e 2 i casi comunque per prima cosa bisogna procurarsi il firmware, questa scheda e' sofmac quindi server questo firmware <a target="_blank" href="http://daemonizer.de/prism54/prism54-fw/fw-softmac/lmac_2.7.0.0.arm">http://daemonizer.de/prism54/prism54-fw/fw-softmac/lmac_2.7.0.0.arm</a><br />
<br />
spostiamo in /lib/firmware e preleviamo il file<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">wget http://daemonizer.de/prism54/prism54-fw/fw-softmac/lmac_2.7.0.0.arm</pre>
</div>
<br />
infine rinominiamolo in isl3886<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">mv lmac_2.7.0.0.arm isl3886</pre>
</div>
<br />
a questo punto bisogna iniziare con il kernel , spostiamoci in /usrl/src e scarichiamo il kernel 2.6.25<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">wget wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.tar.bz2</pre>
</div>
<br />
scompattiamo :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">tar xjf linux-2.6.25.tar.bz2</pre>
</div>
<br />
e linkiamo :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">ln -s linux-2.6.25 linux</pre>
</div>
<br />
spostiamoci poi in /usr/src/linux e iniziamo , copiando anche la vecchia config del kernel originale di CentOS :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">make clean && make mrproper<br />cp /boot/config-`uname -r` ./.config</pre>
</div>
<br />
e poi si inizia con la personalizzazione del kernel :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">make menuconfig</pre>
</div>
<br />
una volta fatte le scelte per la vostra macchina ( ricordiamoci di controllare che p54 sia inserito , ma dovrebbe esserlo di default ) salviamo e usciamo.<br />
<br />
a questo punto creiamo rpm del nostro nuovo kernel ( assicuratevi di avere : yum install gcc make rpmbuil )<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">make rpm</pre>
</div>
<br />
a seconda della macchina puo prendere da 30 minuti a qualche ora ... aspettiamo ....<br />
<br />
troverete rpm del nuovo kernel in /usr/src/redhat/RPMS/i386/ il dome nel mio caso e' kernel-2.6.25-1.i386.rpm<br />
<br />
adesso si puo procedere all installazione<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">cd /usr/src/redhat/RPMS/i386/<br />rpm -ivh --nodeps kernel-2.6.25-1.i386.rpm</pre>
</div>
<br />
infine c'e da creare il ramdisk per il nuovo kernel<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">mkinitrd /boot/initrd-2.6.25.img 2.6.25</pre>
</div>
<br />
fatto questo ultimo passo e' modificare il boot loader grub<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">vi /boot/grub/menu.lst</pre>
</div>
<br />
aggiungedo il richiamo al nuovo kernel nel mio caso :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">title CentOS (2.6.25)<br /> root (hd0,0)<br /> kernel /vmlinuz-2.6.25 ro root=/dev/VolGroup00/LogVol00<br /> initrd /initrd-2.6.25.img</pre>
</div>
<br />
Riavviate il sistema , per controllare<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">uname -r</pre>
</div>
<br />
e dovreste vedere il kernel 2.6.25<br />
<br />
andiamo poi a controllare il file /etc/modprobe.conf<br />
<br />
il file deve contenere questa linea :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">alias wlan0 p54pci</pre>
</div>
<br />
assicuriamoci anche che il modulo prism54 non sia caricato , nel /etc/modprobe.d/blacklist , dobbiamo inserire questa linea :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">blacklist prism54</pre>
</div>
<br />
riavviamo nuovamente e poi per testare la scheda pci wifi<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">iwconfig</pre>
</div>
<br />
e dovrebbe comparire :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">wlan0 IEEE 802.11g ESSID:"xxxxxxx" <br /> Mode:Managed Frequency:2.412 GHz Access Point: Not-Associated <br /> Tx-Power=27 dBm <br /> Retry min limit:7 RTS thr:off Fragment thr=2352 B <br /> Encryption key:off<br /> Link Quality:0 Signal level:0 Noise level:0<br /> Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0<br /> Tx excessive retries:0 Invalid misc:0 Missed beacon:0<br /></pre>
</div>
<br />
e poi proviamo la scansione :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">iwlist wlan0 scanning</pre>
</div>
<br />
Se ci sono problemi possiamo controllare i moduli e il file /etc/sysconfig/network-scripts/ifcfg-wlan0 <br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">lsmod | grep p54</pre>
</div>
<br />
e dovremmo vedere cosi :<br />
<br />
<div class="codeheader">Codice:</div>
<div class="code">
<pre style="margin-top: 0pt; display: inline;">[root@centos modprobe.d]# lsmod | grep p54<br />p54pci 15872 0 <br />p54common 15616 1 p54pci<br />mac80211 123532 2 p54pci,p54common<br /><br /><br />root@centos modprobe.d]# cat /etc/sysconfig/network-scripts/ifcfg-wlan0<br /># Intersil Corporation ISL3890 [Prism GT/Prism Duette]/ISL3886 [Prism Javelin/Prism Xbow]<br />DEVICE=wlan0<br />ONBOOT=yes<br />BOOTPROTO=dhcp<br />HWADDR=00:12:bf:0b:5d:51<br /><br /></pre>
</div>
<br />
e' tutto !!! buon wireless <img border="0" alt="Sorriso" src="../../Smileys/default/smiley.gif" />
Commenti
1) Re: Installazione scheda PCI WIFI b/g con chipset Prism ISL3886 su CentOS 5.1 e kernel 2.6.25
Ottima guida. Complimenti!
Eugenio