Como compilar o driver de um dispositivo Linux

Escrito por mark pool | Traduzido por ilve maria
  • Compartilhar
  • Tweetar
  • Compartilhar
  • Pin
  • E-mail
Como compilar o driver de um dispositivo Linux
Aprenda a compilar um driver de dispositivo Linux (Comstock Images/Comstock/Getty Images)

Os carregamentos de drivers de dispositivos do kernel Linux são o núcleo do sistema operacional em todas as versões do Linux. Os drivers do dispositivo são carregados automaticamente para o hardware suportado na maioria das distribuições baseadas em RPM e APT. Se o seu hardware não for carregado automaticamente e o fabricante fornecer um driver de dispositivo, você pode instalá-lo manualmente. Módulos compilados podem ser carregados e adicionados à configuração do núcleo imediatamente. O código fonte deve primeiro ser compilado usando os cabeçalhos do kernel ou o código fonte completo.

Nível de dificuldade:
Moderado

Outras pessoas estão lendo

Instruções

    Compilando um módulo

  1. 1

    Baixe o código-fonte para o módulo do kernel.

  2. 2

    Digite o seguinte comando em uma janela terminal para instalar os cabeçalhos do kernel:

    Distribuições baseadas em RPM: su -c 'yum install kernel-devel'

    Distribuições baseadas em APT: sudo apt-get install linux-headers-$(uname -r)

    Use o comando correto para a sua versão do Linux. Certifique-se de digitar os comandos exatamente como mostrado, incluindo aspas simples.

  3. 3

    Digite o seguinte comando para alterar para o diretório do código-fonte:

    cd /home/myuser/modulecode

    Altere "/home/myuser/modulecode" pelo local do código-fonte do módulo.

  4. 4

    Digite o seguinte comando para criar um "makefile":

    vi Makefile

    Isso abre o editor de texto e cria o makefile. O comando "make" usa o makefile para compilar o módulo.

  5. 5

    Digite o seguinte código de seis linhas no editor de texto:

    obj-m = mymodule.o KVERSION = $(shell uname -r) all: make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules clean: make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean

    Substitua "mymodule" pelo nome do módulo que você está compilando. Salve o arquivo e saia do vi.

  6. 6

    Digite o seguinte comando para compilar o módulo:

    make

  7. 7

    Digite os seguintes comandos para carregar e descarregar o módulo:

    Carregar: su-c 'insmod mymodule.ko' Descarregar: su-c 'mymodule rmmod'

    Substitua "mymodule" pelo nome do módulo a ser carregado ou descarregado.

    Carregando módulos automaticamente na inicialização

  1. 1

    Digite o seguinte comando em uma janela terminal:

    su -c 'mkdir -p /lib/modules/$(uname -r)/kernel/drivers/mymodule'

    Substitua "mymodule" pelo nome do módulo. Este comando cria um diretório para armazenar o módulo.

  2. 2

    Digite o seguinte comando para copiar o módulo para o novo diretório:

    su -c 'cp /modulepath/mymodule.ko /lib/modules/$(uname -r)/kernel/drivers/mymodule/'

    Substitua "modulepath" e "mymodule" pelo caminho correto e o nome do módulo.

  3. 3

    Digite o seguinte comando:

    su -c 'vi /etc/modules'

    Este comando abre o arquivo de configuração do módulo de todo o sistema para edição.

  4. 4

    Adicione o seguinte ao final do arquivo:

    mymodule

    Substitua "mymodule" pelo nome do módulo. Feche e salve o arquivo. As alterações terão efeito na próxima vez que o sistema for reiniciado. Ela deixará de ser necessário ao carregar e descarregar manualmente o módulo.

Não perca

Filtro:
  • Geral
  • Artigos
  • Slides
  • Vídeos
Mostrar:
  • Mais relevantes
  • Mais lidos
  • Mais recentes

Nenhum artigo disponível

Nenhum slide disponível

Nenhum vídeo disponível