InstalandoPlacaWirelessComNdiswrapper
Instalando uma placa wireless (com driver para windows) no Linux usando o ndiswrapper
Introdução
Este documento é uma compilação dos melhores tutoriais da internet sobre o assunto. Em quase duas páginas foi feito um guia para instalar uma placa wireless com driver “for windows” dentro do linux.
Logo quando instalei o Linux, eu tinha conhecimento quase zero do sistema. Porém era necessário fazer uma coisa antes de qualquer outra tarefa: instalar a internet. Somente com acesso a internet eu poderia instalar outros programas para o linux. Mas como fazer isso? Visto que a minha placa wireless não possuia driver para Linux? Encontrei a solução com o “ndiswrapper”.
Mas foi super trabalhoso. Imagine para um usuário nível iniciante ter que deparar com temas como compilação de programas e baixar hearders do kernel, logo de primeira. O resultado de muita dor de cabeça e trabalho foi escrito aqui.
Espero que esse documento possa ajudar você em algo.
Cristiano M. Magalhães
Passo-a-passo
1) Baixe e instale o pacote “ndiswrapper”
1.1) Acesse http://ndiswrapper.sourceforge.net e faça o download do pacote debian do ndiswrapper. Você irá baixar o pacote contendo código fonte. Como estamos configurando a placa wireless para conectar à internet, provavelmente você terá que fazer essa etapa de um outro computador ou em outro sistema operacional instalado em seu computador.
1.2) Ao ter feito o download do pacote, instale-o com o comando “dpkg”
root@PCWork:/home/cris # dpkg -i niswrapper-source_1.1-1_i386.deb
1.3) Se necessário, instale o “linux-headers”
root@PCWork:/home/cris # apt-get install linux-headers-2.6.10-5-386
1.4) Se necessário, instale o “gcc”
root@PCWork:/home/cris # apt-get install gcc
1.5) Compile o “ndiswrapper” para a versão do kernel que você está usando.
root@PCWork:/home/cris # cd /usr/src root@PCWork:/usr/src # tar jxvf ndiswrapper-source.tar.bz2 root@PCWork:/usr/src # cd modules/ndiswrapper root@PCWork:/usr/src/modules/ndiswrapper # debian/rules binary-modules root@PCWork:/usr/src/modules/ndiswrapper # debian/rules binary-utils root@PCWork:/usr/src/modules/ndiswrapper # cd .. root@PCWork:/usr/src/modules # dpkg -i ndiswrapper*.deb
obs.: você pode logar como root e não usar o comando “fakeroot”.
2) Instale o seu driver wireless para windows no linux usando o “ndiswrapper”
Pré-requisitos
Importante: tenha cuidado ao usar drivers do CD de instalação da sua placa wireless. Eles podem funcionar, mas podem proporcionar “kernel crashes” e outros problemas caso o driver não tiver sido testado e/ou atualizado para uma versão mais recente.
Caso haja problemas, é recomendável que você faça o download mais apropriado do seu driver Windows diretamente do site do fabricante. Para identificar o driver que você precisa, primeiro identifique a placa que você possui com o comando “lspci” a anote a primerica coluna (algo como 0000:00:0c.0) a então ache o PCI ID da placa com “lspci -n” correspondente à primeira coluna da saída do comando “lspci”.
root@PCWork:/home/cris # lspci 0000:00:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8180L 802.11b MAC (rev 20) root@PCWork:/home/cris # lspci -n 0000:00:09.0 Class 0200: 10ec:8180 (rev 20)
O PCI ID é a terceira coluna (ou quarta em algumas distribuições) e possui o formato “104c:8400”. Agora você precisa obter o driver Windows com o mesmo chipset. Na lista de drivers ache o correspondente ao mesmo PCI ID e faça o download.
No exemplo acima, a placa foi detectada como sendo “10ec:8180”. Esse chipset foi fabricado pela Realtek e pode ser baixado no endereço abaixo:
obs.: por se tratar de um exemplo, não necessariamente a sua placa será a mesma, sendo assim, você tem que consultar o site do seu fabricante, ou então pesquisar sobre tal no Google (http://www.google.com).
Descompacte o driver Windos com as ferramentas unzip/cabextract/unshield e ache o arquivo INF (arquivo com extensão .INF ou .inf) e o(s) arquivo(s) SYS (arquivos com extensão .SYS ou .sys).
Tenha certeza que os arquivos INF, SYS ou algum BIN estejam todos no mesmo diretório.
Agora, use “ndiswrapper” para instalar o driver com o comando. Vá para o próximo passo.
2.1) Mude para o diretório que está o driver windows
root@PCWork:/home/cris # cd downloads/wireless/ root@PCWork:/home/cris/downloads/wireless # ls netr8180.inf rtl8180.sys
2.2) Instale o driver com “ndiswrapper -i <nome_driver.inf>”
root@PCWork:/home/cris/downloads/wireless # ndiswrapper -i netr8180.inf Installing netr8180
2.3) Confira de o driver foi instalado pelo ndiswrapper
root@PCWork:/home/cris/downloads/wireless # ndiswrapper -l Installed ndis drivers: netr8180 driver present, hardware present
2.4) Execute o modprobe para instalar os módulos necessários
root@PCWork:/home/cris/downloads/wireless # modprobe ndiswrapper
2.5) Faça inicializar toda vez ao boot com “ndiswrapper -m”
root@PCWork:/home/cris/downloads/wireless # ndiswrapper -m Adding "alias wlan0 ndiswrapper" to /etc/modprobe.d/ndiswrapper
3) Configure a rede acessando “Computer->System Configuration->Rede (ou Networking)”
obs.: esse menu pode ser acessado se você utiliza o Linux Ubuntu. Para outras distribuições, consulte o manual para configurar a sua rede corretamente.
4) Outras ferramentas para consultas:
Lista os dispositivos de rede do sistema $ ifconfig -a
Verifica se o ndiswrapper foi reconhecido pelo modprobe $ lsmod O “ndiswrapper” deve ser listado mais ou menos assim: ndiswrapper 119348 0
5) Solucionando possíveis erros:
Erro: wlan0 não é listada com o comando “$ ifconfig -a” Diagnóstico: Verifique se você fez o download das versões mais recentes do driver wireless para Windows e da ferramenta ndiswrapper.
Links
Cristiano Meira Magalhães