Como os fabricantes de placas LAN desenvolvem e lançam novas versões de adaptadores LAN, normalmente também o fazem com drivers novos ou atualizados. Algumas vezes, a nova placa LAN funciona corretamente com um driver de versão mais recente e, outras vezes, o driver mais recente não reconhece a nova placa LAN e se recusa a carregá-la. De vez em quando, o driver mais antigo carrega a placa LAN, mas ela exibe problemas sérios de desempenho. Para obter todos os recursos de desempenho de uma placa LAN nova, você deve usar o driver novo.
As seções a seguir explicam como obter ou compilar drivers:
Se você precisar carregar os drivers com parâmetros específicos, consulte a Seção 65.5.3, Carregando drivers com parâmetros.
Os novos drivers LAN devem ser obtidos através do fabricante. A maioria dos fabricantes de placas LAN possuem drivers disponíveis para download gratuito em seus sites na Web. Alguns drivers estão disponíveis em www.scyld.com/network e a origem para o driver Broadcom BCM5700 pode ser descarregada em http://www.broadcom.com/drivers/downloaddrivers.php.
Se um fabricante possuir um driver binário compilado especificamente para a versão de kernel usada pelo ZENworks, você poderá obter o driver e usar um dos métodos de atualização para adicioná-lo. O ZENworks 7 é baseado no SLES 9 SP2, versão de kernel 2.6.5-7.191. Se o driver não for para essa versão específica, será preciso obter a origem e compilá-la para essa versão. Para obter mais informações, consulte a Seção 65.5.2, Criando drivers.
Quase todos os drivers Linux são distribuídos na forma de códigos fonte e precisam ser compilados antes de serem usados. Siga as instruções do fabricante incluídas no driver novo, para criar o módulo do driver. Muitos drivers podem ser criados de forma que sejam inseridos no próprio kernel, entretanto, recomendamos que os drivers LAN sejam criados em módulos de kernel externos.
Ao criar drivers LAN, verifique se sua máquina de criação usa o mesmo kernel do ambiente de criação de imagens. Se possuir um driver de LAN que não possa ser carregado no ambiente de criação de imagens, isso geralmente significa que existe uma incompatibilidade entre seu ambiente de criação e o ambiente de criação de imagens.
É possível localizar a versão de kernel atual do seu ambiente Linux usando o seguinte comando:
uname -r
Entretanto, talvez seja necessário modificar os resultados do comando uname para obter as versões de kernel compatíveis. Para obter mais informações, consulte a Seção 65.6, Usando uname.
Para criar os drivers:
Para compilar um módulo, é preciso que a árvore do código fonte do Linux contenha a configuração correspondente ao kernel do ZENworks. Para obter o código fonte necessário, consulte o TID 10091818 no Novell Support Knowledgebase.
Para usar a árvore do código fonte do Linux:
Descompacte o arquivo e instale a árvore do código fonte no diretório /usr/src.
Por exemplo, o arquivo tar cria os seguintes diretórios:
/usr/src/linux-2.6.5-7.191 /usr/src/linux-2.6.5-7.191-obj
Obtenha o arquivo de configuração correto a partir de um dos seguintes locais:
Copie esse arquivo de configuração para o diretório criado na Etapa 1.
Por exemplo, /usr/src/linux-2.6.5-7.191.
Para criar um link para a árvore de origem:
Para mudar para o diretório /usr/src, digite:
cd /usr/src
Se houver uma conexão virtual Linux no diretório, apague-a.
Crie uma conexão virtual Linux do tipo:
ln -s linux-2.6.5-7.191 linux
Agora, você possui a árvore de origem do kernel do Linux e uma conexão virtual prontos para compilar o módulo. Continue em Compilando o módulo.
Para compilar o módulo manualmente:
Instale a fonte.
Siga as instruções fornecidas pelo fabricante para instalar a fonte.
Normalmente, a fonte do módulo está em um diretório em /usr/src. Os arquivos fonte do módulo vêm no formato de um arquivo tar gz compactado (.tar.gz ou .tgz). Também pode ser um arquivo compactado bz (.bz2).
Para compilar a fonte:
Mude os diretórios para a fonte.
Se você modificou uname para mudar para a versão de kernel adequada, emita um comando make.
Depois que o módulo estiver compilado para o ZENworks, instale o arquivo de módulo .ko gerado (verifique se selecionou o nome de módulo certo e não um arquivo de trabalho .ko) usando o método de atualização de driver ou colocando-o no sistema de arquivos initrd.
Se, durante o tempo de processamento do linuxrc, houver um módulo que você deseje carregar e o linuxrc não reconhecer que ele precisa ser carregado ou se você desejar especificar os parâmetros de carregamento, será possível digitar uma linha no arquivo linuxrc.config ou no arquivo /info. Esse arquivo, então, precisará ser atualizado no sistema de arquivos initrd.
Talvez você precise carregar um módulo de driver LAN com parâmetros específicos. É possível fazer isso com uma linha como:
insmod="moduleName parm=xxx"
Esse tipo de linha é mais usada para carregar um driver de LAN com parâmetros específicos, como full duplex ou velocidade específica.