segunda-feira, 9 de junho de 2008

Wireless + Notebook ACER + Fedora

Sistema: Fedora 8 i386
Hardware: Acer Aspire 3000
chipset: bcm4318 (placa wireless on board)

Infelizmente ainda não é tão fácil fazer o linux funcionar em rede sem fio. Afalta de drivers adequados fazem com que seja ainda uma tarefa complexa para usuários mortais consequirem um simples acessos a internet sem fio, que muitas vezes no windows ser faz em segundos sem nem mesmo pensar.

O módulo desta placa que vem por padrão no Fedora não funciona corretamente, sendo assim devemos tomar outro caminho. Foi utilizado o ndiswrapper, software que utiliza o driver "for windows" e cria um módulo para a distribuição linux.

Pré-requisitos:
instalar o pacote kernel-devel
baixar e descompactar o ndiswrapper

#yum install kernel-devel

copiar o arquivo de configuração de seu kernel para o diretório do fonte de seu kernel

#cp /boot/config-2.6.23.1-42.fc8 /usr/src/kernels/2.6.23.1-42.fc8-i686/ (no meu caso)
#cd /usr/src/kernels/2.6.23.1-42.fc8-i686/

O comando a seguir faz com que o fonte do kernel receba as configuraçõe atuais que sua imagem possui.Não há necessidade de compilar o kernel, basta deixar preparado para tal, basta o comando abaixo:
#make oldconfig

Baixando o ndiswrapper
#wget http://ufpr.dl.sourceforge.net/sourceforge/ndiswrapper/ndiswrapper-1.50.tar.gz

Para este tutorial foi utilizada a versão 1.50, mas aplica-se para outras versões também.

Após baixado o fonte do ndiswrapper, vamos descompactar o mesmo:
#tar zxvf ndiswrapper-1.53.tar.gz

Feito isso, entramos no diretório do mesmo para compilar e instalar o aplicativo:

#cd ndiswrapper-1.53
#make uninstall --> isto é feito para remover qualquer instalação anterior dele
#make
#make install

Após a instalação teremos disponível o executavel ndiswrapper. Como usar:

No nosso caso teremos de possuir o driver da placa wireless para windows que deve estar disponível no site do fabricante ou mesmo dentre os CD's do equipamento.

#ndiswrapper -i /driver/wireless/bcmwl5a.inf --> isto vai fazer com que seja criado o driver para a placa
#ndiswrapper -m --> converterá em módulo para ser compatível com o linux e carregando um alias no /etc/modprobe.d/ndiswrapper apontando para wlan0

Feito isso seu módulo está pronto para funcionar, bastar executar:
#modprobe ndiswrapper

Detalhes:
Foi necessário descarregar antes os módulos e pôr na blacklist(/etc/modprobe.d/blacklist): b43, ssb

ainda no console removemos da memória os módulos:
#rmmod b43
#rmmod ssb

Após o módulo carregado do ndiswrapper, precisaremos fazer com que o sistema reconheça a rede sem fio, duas formas são possíveis: via console texto (script) ou via aplicação gráfica (NetworkManagerDispatcher)

01) via script:
a) configurar o arquivo /etc/wpa_supplicant/wpa_supplicant

ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=wheel


network={
ssid="_matrix_" -> verificar configuracao de seu AccessPoint
key_mgmt=WPA-PSK --> verificar configuracao de seu AccessPoint
pairwise=TKIP --> verificar configuracao de seu AccessPoint
group=TKIP
scan_ssid=0
#psk="minhasenha" -> verificar configuracao de seu AccessPoint
psk=7297554fa6ec7db272bc406152a197d1b37764
}

Acima a senha foi gerada pelo comando:
#wpa_passphrase ssid senhadarede

E copiado no arquivo wpa_supplicant.conf conforme modelo acima.

Feito isso, executamos o comando abaixo para que a placa wireless reconheça o AccessPoint

#wpa_supplicant -Dwext -iwlan0 -c/etc/wpa_supplicant/wpa_supplicant.conf -B

Em seguida, a placa já dá sinal de vida, dependendo de sua rede, atribua o ip com ifconfig ou com o dhcp.


02) Via modo gráfio

Abra na barra de tarefas de seu desktop o ícone de conexão de rede, clique em conectar-se a outra rede sem fio. Indique a senha e clique em ok, em alguns segundos estará conectado.

Bem, esse pequeno tutorial é bem direto e objetivo, e é aplicado diretamente em notebooks Acer com placa wireless de chipset bcm43xx, pode haver casos semelhantes que não funcione, então cada caso é um caso. Espero que seja útil para aqueles que estão querendo ver o linux sem fio.

Quanto ao script fica a cargo de cada um como montá-lo, acima descrevi os comandos necessários para funcionar. Utilize a imaginação.

Nenhum comentário:

Postar um comentário