User Tools

Site Tools


wiki:linux:comandos_grupos:cmd_kernel

Nível Básico

1. Verificação da Versão do Kernel com `uname`

  • uname -r - Exibe a versão do kernel em execução.
    1. Exemplo de uso:
      uname -r
    2. Descrição: Mostra a versão exata do kernel Linux em execução no sistema, útil para saber qual kernel está ativo.

2. Listagem de Módulos do Kernel com `lsmod`

  • lsmod - Lista todos os módulos do kernel carregados.
    1. Exemplo de uso:
      lsmod
    2. Descrição: Exibe uma lista de todos os módulos do kernel atualmente carregados no sistema, junto com o tamanho de cada módulo e o número de vezes que está em uso.

3. Exibição de Informações de Módulos com `modinfo`

  • modinfo - Exibe informações detalhadas sobre um módulo.
    1. Exemplo de uso:
      modinfo e1000
    2. Descrição: Exibe informações detalhadas sobre o módulo do kernel e1000, incluindo autor, licença, dependências e parâmetros configuráveis.

Nível Intermediário

1. Carregamento de Módulos do Kernel com `modprobe`

  • modprobe - Carrega um módulo do kernel.
    1. Exemplo de uso:
      sudo modprobe e1000
    2. Descrição: Carrega o módulo do kernel e1000 (driver de rede Intel), tornando-o ativo e disponível para uso no sistema.

2. Remoção de Módulos do Kernel com `rmmod`

  • rmmod - Remove um módulo do kernel.
    1. Exemplo de uso:
      sudo rmmod e1000
    2. Descrição: Remove o módulo do kernel e1000 que está carregado, liberando os recursos associados a ele.

3. Controle de Parâmetros de Módulos com `modprobe`

  • modprobe com parâmetros - Carrega um módulo com parâmetros customizados.
    1. Exemplo de uso:
      sudo modprobe e1000 debug=1
    2. Descrição: Carrega o módulo do kernel e1000 e habilita o modo de depuração passando o parâmetro debug=1. Útil para ajustar o comportamento de módulos.

Nível Avançado

1. Criação de Módulos do Kernel com Código Fonte

  • make modules - Compila módulos do kernel a partir do código-fonte.
    1. Exemplo de uso:
    cd /usr/src/linux
    make modules
 
  1. Descrição: Compila todos os módulos do kernel a partir do código-fonte localizado em /usr/src/linux, criando binários dos módulos para serem carregados posteriormente.

2. Gerenciamento de Dependências de Módulos com `depmod`

  • depmod - Atualiza as dependências de módulos do kernel.
    1. Exemplo de uso:
      sudo depmod -a
    2. Descrição: Atualiza as dependências dos módulos do kernel, garantindo que todos os módulos que dependem de outros estejam corretamente configurados para carregar na ordem certa.

3. Configuração de Módulos em Inicialização com `modprobe.d`

  • modprobe.d - Configura módulos para serem carregados na inicialização.
    1. Exemplo de uso:
    sudo nano /etc/modprobe.d/e1000.conf
    # Adicione a linha:
    options e1000 debug=1
 
  1. Descrição: Cria um arquivo de configuração para o módulo e1000 que será lido na inicialização, garantindo que o parâmetro debug=1 seja passado automaticamente sempre que o módulo for carregado.

Nível Especializado

1. Modificação de Parâmetros de Kernel em Execução com `sysctl`

  • sysctl - Ajusta parâmetros do kernel em tempo real.
    1. Exemplo de uso:
      sudo sysctl -w net.ipv4.ip_forward=1
    2. Descrição: Habilita o redirecionamento de pacotes IPv4 no kernel, útil em ambientes de roteamento de rede. O comando ajusta esse parâmetro dinamicamente, sem precisar reiniciar o sistema.

2. Monitoramento de Eventos do Kernel com `dmesg`

  • dmesg - Exibe logs de eventos e mensagens do kernel.
    1. Exemplo de uso:
      dmesg | grep e1000
    2. Descrição: Filtra e exibe todas as mensagens relacionadas ao módulo e1000, ajudando a depurar problemas relacionados ao driver de rede e monitorar mensagens de erros do kernel.

3. Criação e Inserção de Módulos Personalizados com `insmod`

  • insmod - Insere um módulo do kernel manualmente.
    1. Exemplo de uso:
      sudo insmod /path/para/modulo.ko
    2. Descrição: Insere um módulo personalizado no kernel, útil para testes de desenvolvimento. O módulo deve estar previamente compilado e armazenado no formato modulo.ko.

4. Debugging de Módulos com `ftrace`

  • ftrace - Usa ferramentas de tracing para depuração de módulos.
    1. Exemplo de uso:
    echo function > /sys/kernel/debug/tracing/current_tracer
    echo e1000 > /sys/kernel/debug/tracing/set_ftrace_filter
    cat /sys/kernel/debug/tracing/trace
 
  1. Descrição: Habilita o tracing de funções relacionadas ao módulo e1000, exibindo chamadas detalhadas de funções para depuração em tempo real. Isso é útil para entender o comportamento interno de módulos.
wiki/linux/comandos_grupos/cmd_kernel.txt · Last modified: by Wiki Administrator