Módulos do Kernel
100%

Kernel · Lição 6

Módulos do Kernel

Aprenda a inspecionar, carregar, configurar e remover com segurança módulos específicos da versão do kernel Linux.

Um módulo carregável é código privilegiado que amplia o kernel em execução com um driver, sistema de arquivos, recurso de rede ou outro subsistema. Os módulos evitam incorporar todo recurso opcional à imagem principal, mas cada módulo carregado aumenta a superfície confiável de ataque.

Listagem e inspeção de módulos

Liste os módulos carregados:

$ lsmod

A saída deriva do estado do kernel, como /proc/modules, e inclui nome, tamanho e contagem de uso ou dependências. Uma contagem aparentemente zero não prova que a remoção é segura; um driver ainda pode controlar dispositivos ativos ou participar do estado de um subsistema.

Inspecione um módulo disponível para o kernel atual com:

$ modinfo MODULE_NAME

modinfo pode mostrar arquivo, aliases, parâmetros, licença, descrição e assinatura. Esses metadados são descritivos, não prova de confiança ou compatibilidade com a carga de trabalho.

O que lsmod exibe?

Carregamento com `modprobe`

Carregue um módulo pelo nome:

$ sudo modprobe MODULE_NAME

modprobe consulta índices de dependências, aliases e configurações do kernel atual em /lib/modules/$(uname -r)/. Ele carrega dependências e passa parâmetros configurados. Já insmod insere diretamente um arquivo específico e não oferece o mesmo fluxo de resolução.

Antes de carregar, confirme procedência, política de assinatura, compatibilidade da versão, parâmetros, vínculo esperado com hardware e rollback. Secure Boot ou lockdown podem rejeitar módulos não assinados; forçar código incompatível arrisca travamento ou comprometimento.

Por que normalmente se prefere modprobe a insmod direto?

Parâmetros e carregamento no boot

Parâmetros e aliases persistentes ficam em um arquivo .conf de /etc/modprobe.d/:

options example_module mode=careful

Essa linha afeta como o módulo é carregado; sozinha, não solicita carregamento no boot. Uma lista simples para o boot costuma ficar em /etc/modules-load.d/:

example_module

Aliases de hardware muitas vezes acionam carregamento automático sem lista explícita. Para módulos necessários no início do boot, atualize o initramfs pelo processo documentado da distribuição.

O que faz uma linha options em /etc/modprobe.d/?

Blacklist e suas limitações

Uma configuração pode conter:

blacklist example_module

Isso normalmente suprime o carregamento automático pelos aliases. Não descarrega um módulo ativo, não o remove do initramfs nem necessariamente impede uma carga explícita pelo nome ou como dependência. Hardening exige uma combinação específica de disponibilidade, assinaturas, initramfs, parâmetros de boot e política.

O que uma linha básica blacklist do modprobe suprime principalmente?

Remoção segura de um módulo

Solicite a remoção com:

$ sudo modprobe -r MODULE_NAME

Modprobe pode remover dependências que ficaram sem uso. O kernel recusa quando o rastreamento comum mostra que o módulo está ocupado, mas isso não deve ser a única verificação. Pare serviços, desmonte sistemas de arquivos, desconecte dispositivos, estabilize a rede e confirme outro driver ou caminho de recuperação.

Nunca force a remoção em um sistema que precisa preservar. Falhas ou atividades pendentes podem travar o kernel ou corromper dados.

Qual comando solicita a remoção de um módulo pelo nome considerando dependências?

Lição concluída

Você concluiu Módulos do Kernel

Agora você consegue gerenciar módulos respeitando seu risco no nível do kernel.

  • Usar lsmod para estado ativo e modinfo para metadados.

  • Usar modprobe para carregamento com aliases e dependências.

  • Separar parâmetros do modprobe de pedidos de carga no boot.

  • Tratar blacklist como política limitada, não bloqueio absoluto.

  • Interromper todos os consumidores antes de modprobe -r.

Salve seu progresso

Crie uma conta gratuita para salvar esta lição e continuar em qualquer dispositivo.

Criar uma conta gratuita
Voltar para Kernel