Arquivo da categoria: ‘ Redes

Esta semana resolvi testar três distribuições linux no meu desktop: Ubuntu 9.04, openSuSE 11.1 e CentOS 5.3, todos 32bits. Lembrando que antes de testa-las, eu tinha o Slackware 12.2 instalado e devidamente configurado, todo o hardware foi detectado no boot, não havendo necessidade alguma de corrigir problemas de hardware, apenas tive que configurar manualmente a minha NVidia.

Meu desktop é um singelo AMD Athlon XP 2000+ com 768Mb, 100% off-board. O Ubuntu cumpriu o prometido: 23s do boot ao login. O openSuSE já tinha um boot mais lento (muito mais lento que o do Ubuntu) e também na sua inicialização padrão (do openSuSE) carregou muita coisa desnecessária deixando a máquina lenta. O CentOS, também funcinou tudo redondo, boot ficou rápido, mas não tanto quanto o do Ubuntu.

Mas todas 3 pecaram em um único ponto: Minha placa de Rede Wireless PCI. No Slackware ela funcionava redondamente, sem a necessidade de configurações extras, nos Linux “PnP” tive uma supresa. A placa é uma DLink com chipset RaLink RT2561/RT61. Nas três distribuições a mesma falha, dizia que o driver havia sido compilado com uma versão antiga do firmware. Decidi então ir em busca da solução e acredito que será a mesma para qualquer outra distribuição Linux que acuse o problema.

Pesquisando pela saída do “lspci” encontrei um link para http://www.ralinktech.com/ralink/Home/Support/Linux.html onde contém os drivers para Linux. Baixei o arquivo 2009_0123_RT61_Linux_STA_v1.1.2.3.tar.bz2.

Vamos decompactar e compilar:

[ root@centos Downloads ]# tar xvjf 2009_0123_RT61_Linux_STA_v1.1.2.3.tar.bz2 -C /usr/src/.
[ root@centos Downloads ]# cd /usr/src/2009_0123_RT61_Linux_STA_v1.1.2.3/Module
[ root@centos Module ]# cp -f Makefile.6 Makefile
[ root@centos Module ]# make all
[ root@centos Module ]# make install
[ root@centos Module ]# mkdir -p /etc/Wireless/RT61STA
[ root@centos Module ]# cp *.bin /etc/Wireless/RT61STA/
[ root@centos Module ]# dos2unix rt61sta.dat
[ root@centos Module ]# cp rt61sta.dat /etc/Wireless/RT61STA/
[ root@centos Module ]# rmmod rt61pci
[ root@centos Module ]# modprobe rt61

Pronto! Foi criada uma interface de rede, nomeada de ra0. Portanto wlan0 não funciona mais.

Vamos testar agora:

[ root@centos Module ]# cd ~
[ root@centos root ]# iwlist ra0 scan

Aqui deverão aparecer informações sobre sua rede wireless. Agora é só utilizar a placa de rede, sem dor de cabeça.

Acredito que esta dica sirva não apenas para o Slackware, mas como para qualquer outro Linux que não configure esta placa de rede automáticamente. Para tal, faz-se necessário que você efetue login no sistema com o usuário “root”.

Parte 1: Compilando o b43-fwcutter

Este utilitário será usado para extrair os firmwares da placa de rede broadcom para que a mesma funcione corretamente no Linux.

Faça o download dele em: http://bu3sch.de/b43/fwcutter/b43-fwcutter-011.tar.bz2

Agora vamos descompactar e compilar

root@slackware: ~# tar xvjf b43-fwcutter-011.tar.bz2 -C /usr/src/
root@slackware: ~# cd /usr/src/b43-fwcutter-011
root@slackware: /usr/src/b43-fwcutter-011# make
root@slackware: /usr/src/b43-fwcutter-011# cd ~

Parte 2: Extraindo os Firmwares da placa de rede

Efetue o download do driver em: http://mirror2.openwrt.org/sources/broadcom-wl-4.150.10.5.tar.bz2

Agora vamos “Extrair e Instalar” os firmwares.

root@slackware: ~# tar xvjf broadcom-wl-4.150.10.5.tar.bz2 -C /usr/src/
root@slackware: ~# export FIRMWARE_INSTALL_DIR=”/lib/firmware”
root@slackware: ~# cd /usr/src/broadcom-wl-4.150.10.5/driver
root@slackware: /usr/src/broadcom-wl-4.150.10.5/driver# ../../b43-fwcutter-011/b43-fwcutter -w “$FIRMWARE_INSTALL_DIR” wl_apsta_mimo.o

Várias linhas serão exibidas neste passo. Agora vamos ativar o módulo da placa de rede:

root@slackware: /usr/src/broadcom-wl-4.150.10.5/driver# rmmod b43
root@slackware: /usr/src/broadcom-wl-4.150.10.5/driver# modprobe b43

Protinho. Neste ponto sua Wireless já deverá estar funcionando. Para efetuar um teste execute o comando abaixo:

root@slackware: /usr/src/broadcom-wl-4.150.10.5/driver# iwlist wlan0 scan

Deverão ser exibidas informações de sua rede Wireless.

Parte 3: Alguns problemas que eventualmente poderão ocorrer

1) Em outras versões do Slackware com kernel 2.6.24 ou mais antigas, talvez os firmwares precisem da versão mais antiga, então faça o download destes firmwares: http://downloads.openwrt.org/sources/broadcom-wl-4.80.53.0.tar.bz2, o processo é o mesmo para a extração do firmware.

2) Em versões mais antigas do kernel, o driver da Broadcom era o “bcm43xx”, logo pode ser que o Kernel insista em inicializar ele no lugar do “b43″. Logo recomendo que remova este módulo ou então coloque-o numa blacklist ou ainda se preferir no seu rc.local, coloque os comandos:

rmmod bcm43xx
modprobe b43

Espero ter ajudado. Até a próxima.

Bibliografia:

http://linuxwireless.org/en/users/Drivers/b43#fw-b43-new

Hoje precisei restaurar um backup via rede de Linux para Linux via SMB (poderia ter usado NFS, mas eu queria fazer via SMB), então lá fui eu a moda antiga montar o meu compartilhamento samba usando a opção “smbfs” e o CentOS me dizia que não conhecia esse sistema de arquivos e agora o que fazer?

Simples, 2min de conversa com o Oráculo, eis que descobri que o SMBFS está “deprecated”, e a recomendação é utilizar o “CIFS”

Então foi assim que resolvi o meu problema:

# mount -t cifs -o users,rw //192.168.100.60/backup /mnt

Prontinho! Compartilhamento SMB acessível, isso serve tanto para servidores com samba quanto servidores Windows.

Bom, tutorial bastante simples focado para iniciantes. Aqui explico como fazer um cabo de redes para uso em HUB/Switch e também o famoso cabo cross-over (ponto-a-ponto).

Se irá utilizar o cabo em um Hub ou Switch basta fazer as duas pontas iguais, seguindo o modelo abaixo.

1) bv.v.bl.a.ba.l.bm.m

2) bv.v.bl.a.ba.l.bm.m

Se irá utilizar o cabo para uma conexão direta entre dois computadores, precisará de um cabo cross-over, para isso basta fazer cada uma das pontas conforme modelo abaixo.

1) bv.v.bl.a.ba.l.bm.m

2) bl.l.bv.a.ba.v.bm.m
Bom, fica aqui minha contribuição e espero que seja de grande valia para todos. Um abraço.