ct

    Guia: Usando o Slackware


     Carlos E. Morimoto
     12/08/2006


    Configurando a placa de som e rede e modem


    O suporte a dispositivos no Linux é feito através de módulos, que são a coisa mais próxima dos drivers de dispositivo do Windows. Os módulos são parte integrante do Kernel e são instalados junto com o sistema. Cada módulo dá suporte a um determinado componente (uma placa de som ou rede por exemplo). Quando o módulo é carregado, ele verifica se você tem realmente a placa em questão ativada e, caso tenha, ele habilita o suporte a ela.

    O Kernel conta com uma biblioteca de drivers muito grande e as distribuições complementam isso com ferramentas que detectam o hardware do micro durante a instalação ou a cada boot, carregando os módulos e fazendo as configurações necessárias. Como os drivers para a maior parte dos dispositivos suportados já vem pré-instalados no sistema, ao instalar qualquer distribuição atual num desktop ou notebook bem suportado, tudo funciona automaticamente.

    Claro, existem excessões a esta regra, distribuições onde ainda é preciso configurar muita coisa manualmente, como o Slackware ;). Já que estamos usando-o como ponto de partida, vamos começar a entender melhor como isso funciona, o que será bem útil ao resolver problemas com a detecção em outras distribuições.


    O Kernel é dividido em duas partes, a primeira é o executável principal, que vai dentro da pasta "/boot" e é carregado durante o boot. No Slackware 10.2 o Kernel padrão é o "/boot/vmlinuz-ide-2.4.31". A segunda parte são os módulos, que vão dentro da pasta "/lib/modules/". Dentro dela, você encontra uma pasta separada para cada Kernel instalado (é possível ter vários instalados, o que é útil para testar novas versões e diferentes configurações). Os módulos do Kernel 2.4.31, por exemplo, vão na pasta "/lib/modules/2.4.31".

    Os módulos são carregados através do comando "modprobe" e descarregados usando o comando "modprobe -r". A maior parte dos módulos é inteligente o suficiente para carregar apenas caso o dispositivo a que dá suporte esteja realmente presente, evitando que você fique com módulos não usados carregados na memória.

    Dentro do diretório /etc/rc.d temos mais alguns arquivos interessantes, como o rc.modules, onde ativamos ou desativamos o suporte a dispositivos, simplesmente comentando e descomentando as linhas referentes a eles. Esse arquivo tem nada menos que 680 linhas (calma, poderia ser pior...) mas está dividido em seções, como "USB Support", "Sound Support", "Ethernet Cards Support", etc. o que já facilita um pouco as coisas.

    Tudo o que você tem a fazer é descobrir qual módulo sua nova placa de som ou de rede utiliza e descomentar a linha correspondente.

    O primeiro passo é verificar qual é o chipset da placa de som instalado no seu micro. Use o comando: grep Multimedia /proc/pci :

    [root@Spartacus etc]# grep Multimedia /proc/pci

    Multimedia audio controller: Creative Labs SB Live! EMU10k1 (rev 8).

    Dentro da pasta /usr/src/linux/Documentation/sound você encontrará alguns tutoriais que explicam quais módulos se referem a cada modelo de placa, além de outras instruções necessárias para ativar o suporte. Por exemplo, a linha:

    #/sbin/mdprobe cs4281

    ...dentro da categoria "Sound Support", ativa o suporte a placas de som com o chipset Crystal CS4281. A linha:

    #/sbin/modprobe sb io=0x220 irq=5 dma=3 dma16=5 mpu_io=0x300

    ... um pouco acima ativa o suporte à placas Sound Blaster 16, AWE 32 e AWE 64 ISA, enquanto a linha:

    #/sbin/modprobe emu10k1

    ... ativa o suporte à todas as placas Sound Blaster Live! PCI. Não é complicado. Basta descomentar a linha, salvar o arquivo e reiniciar o micro para que a placa seja ativada no próximo boot. Não é preciso instalar nenhum driver pois eles já estão incluídos diretamente no Kernel :-)

    Por questões de segurança, o default do Slackware é que apenas o root tem permissão para usar a placa de som. Lembre-se que uma das grandes preocupações da distribuição é justamente com a segurança. Mas, isto pode ser facilmente corrigido. Abra um terminal, digite "su" (seguido da senha naturalmente :-) para virar root e tecle os comandos:

    # chmod +666 /dev/dsp
    # chmod +666 /dev/mixer

    Prontinho, agora todos os usuários podem usar o som. Lembre-se que a tralha no início das linhas indicam apenas que os comandos devem ser dados como root, não fazem parte do comando.

    O mesmo se aplica ao modem que por default também só pode ser usado pelo root. Para "destravá-lo", use o comando:

    # chmod +666 /dev/modem

    A partir do Slackware 9.1 os drivers Alsa vem instalados por padrão, o que simplifica bastante a configuração do som. Você precisa apenas chamar o "alsaconfig" (como root) para que a placa seja detectada e configurada:

    A configuração da placa de rede pode ser feita rapidamente usando o netconfig, um utilitário que pergunta o endereço IP e outros dados da rede e no final se encarrega de detectar a placa de rede a ativar o módulo correspondente. Mas, de qualquer forma, a raiz de tudo continua sendo o arquivo /etc/rc.d/rc.modules. Assim como no caso da placa de som, você pode ativar sua placa de rede simplesmente descomentando a linha corretamente. É justamente isso que o netconfig faz. Por exemplo, a linha:

    #/sbin/mdprobe rtl8139

    ... ativa suporte à placas de rede com chipset Realtek 8129/8139 e assim por diante.

    Em caso de dúvida, você pode até mesmo ativar mais de um módulo dentro de cada categoria. Isso tornará a inicialização mais lenta, consumirá mais memória, etc. mas pelo menos ajudará você a achar o módulo correto para a sua placa. O endereço IP, máscara de sub-rede, etc. São gravados no arquivo /etc/rc.d/inet1 e os endereços de DNS do provedor (caso necessário) vão para o arquivo /etc/resolv.conf.

    Se você começar a fuçar nestes e outros arquivos de configuração encontrados dentro da pasta /etc vai começar a entender como o Linux funciona e o que exatamente fazem os programas de configuração. Com um pouco de prática você vai começar a vir aos arquivos justamente para corrigir erros dos configuradores :-)

    Mais um arquivo interessante é o "/etc/rc.d/rc.4", carregado caso você tenha configurado o micro para inicializar direto na interface gráfica. Aqui você pode escolher o gerenciador de login entre o KDE (do KDE) o GDM (do Gnome) ou o XDM (o mais simples). O KDM é o default, porém ele carrega junto algumas das bibliotecas do KDE, o que torna a inicialização mais lenta e consomem memória RAM. Se você está usando um PC mais lento, experimente usar o XDM, que não é tão bonito, mas em compensação consome só 200 KB de memória e carrega em menos de dois segundos :-)

    Considere este um exercício que será útil para entender outros arquivos similares. Este é um cut and paste do conteúdo do arquivo:

    # Tell the viewers what's going to happen...
    echo "Starting up X11 session manager..."

    # KDE's kdm is the default session manager. If you've got this, it's the one to use.
    if [ -x /opt/kde/bin/kdm ]; then
    exec /opt/kde/bin/kdm -nodaemon

    # GNOME's session manager is another choice:
    elif [ -x /usr/bin/gdm ]; then
    exec /usr/bin/gdm -nodaemon

    # If all you have is XDM, I guess it will have to do:
    elif [ -x /usr/X11R6/bin/xdm ]; then
    exec /usr/X11R6/bin/xdm -nodaemon
    fi

    # error
    echo "Hey, you don't have KDM, GDM, or XDM. Can't use runlevel 4 without"
    echo "one of those installed."
    sleep 30
    # All done.

    As linhas com # são só comentários para explicar o que está acontecendo. As linhas começadas com o comando "echo" são mensagens que são escritas na tela, durante o boot. Você pode substituí-las pelas suas próprias mensagens se quiser. Por exemplo, sabe o texto que aparece no menu de inicialização do lilo, durante o boot? Você pode edita-lo no arquivo /boot/lilo.conf. Escreva o que quiser e digite "lilo" para regravar o arquivo na trilha MBR do HD.

    Mas, voltando ao que interessa, o script em sí começa na linha "if" e termina na linha "fi". O que ele faz é procurar na ordem pelo KDM, em seguida pelo GDM e por último pelo XDM, inicializando o primeiro que encontrar.

    Para fazer com que o XDM seja sempre inicializado por default, você precisa apenas "matar" o scrip, fazendo com que ele pare de procurar pelo outros e inicialize direto o XDM. Para isso, basta comentar todas as linhas, deixando apenas a "exec /usr/X11R6/bin/xdm -nodaemon".

    Para terminar, no arquivo /etc/rc.d/rc.inetd2 temos inicializados mais alguns serviços, como o NFS e o SSH que também podem ser desativados caso você não pretenda utilizá-los. O procedimento é o mesmo, simplesmente comentar as linhas do que você não quiser carregar durante a inicialização. Se estiver dentro da interface gráfica, experimente chamar estes arquivos usando o xedit, um editor simples que é instalado por default (xedit arquivo_a_ser_editado). No modo texto você pode utilizar o vi.

    Não se preocupe por não saber a função de cada serviço. Veremos o que cada um faz no capítulo 4. A idéia aqui é apenas dar uma visão geral sobre a função dos principais arquivos de configuração do Slackware.

    A facilidade em encontrar e configurar os scripts é justamente o principal motivo de tantos usuários utilizarem o Slackware. Apesar de à primeira vista ele parecer complicado, para quem tem o costume de configurar o sistema "à moda antiga", o Slackware se revela muito mais simples. Os scripts estão muito melhor organizados e muito melhor comentados do que em outras distribuições. O Slackware é provavelmente a melhor distribuição para quem está começando e quer estudar a fundo o sistema com a ajuda de um bom livro ou uma boa dose de pesquisa.

    Este conhecimento dos scripts e utilitários do sistema vai ser útil também ao solucionar problemas em outras distribuições. Já que apesar de às vezes serem encontrados em locais diferentes, os scripts são basicamente os mesmos em qualquer Linux.

    Atualização: A partir do Slackware 9.0 foi incluído o hotplug, que cuida da detecção de componentes como a placa de som, rede e periféricos USB. Isto significa que muitas coisas que antes precisavam ser feitas manualmente, como configurar a placa de som passaram a ser feitas automaticamente durante a instalação.

    O hotplug também faz um bom trabalho com a detecção de impressoras e scanners USB. Caso os periféricos sejam compatíveis, você precisará apenas configurar a impressora no kaddprinterwizzard (ou outro aplicativo que domine), enquanto o scanner pode ser configurado com a ajuda do xsane.

cb
HOME