Linux / Comando modinfo: consultar descrição e parâmetros de módulos
modinfo consulta os metadados de um módulo do kernel Linux, como descrição, localização, licença, aliases e parâmetros disponíveis. Ele aceita um nome ou caminho de arquivo e não carrega o módulo nem altera suas configurações.
Metadados são informações descritivas fornecidas para o módulo. O kernel é o núcleo do sistema operacional, e um módulo pode acrescentar drivers ou outros recursos. Consultar esses dados não comprova que o módulo esteja carregado: para essa pergunta, consulte a listagem de módulos em execução com lsmod.
Sintaxe e preparação
modinfo [opções] nome_do_módulo|caminho_do_arquivo
Esta linha descreve a sintaxe. Escolha um nome ou um caminho; não digite os colchetes nem use | como um pipeline entre os dois argumentos. Os exemplos seguintes usam nomes concretos de módulos.
Abra um terminal no Linux que deseja consultar. Confira command -v modinfo, modinfo --version, modinfo --help e man modinfo. A implementação tratada aqui faz parte de kmod; verifique a ajuda local se as opções disponíveis forem diferentes.
Para uma consulta por nome, tenha os arquivos de módulos correspondentes ao kernel desejado. Por padrão, a procura considera o kernel em execução; confirme sua identificação com uname -r, conforme o guia do comando uname. Uma atualização pode instalar arquivos de outro kernel antes de você reiniciar a máquina.
Consultar todas as informações disponíveis
modinfo overlay
Este exemplo consulta overlay. Quando a consulta funciona, a saída relaciona campos e valores disponíveis para aquele módulo. Não espere que todos os módulos tenham os mesmos campos, a mesma quantidade de aliases ou parâmetros idênticos.
- filename: localização do arquivo consultado ou indicação de componente embutido, conforme o caso.
- description e license: descrição e identificação de licença fornecidas nos metadados.
- alias: nomes ou padrões pelos quais o módulo pode ser identificado; podem existir várias entradas.
- depends: dependências declaradas pelo módulo consultado, e não uma prova de que elas estejam carregadas.
- parm: informações sobre parâmetros, com descrição e tipo quando fornecidos.
Use os nomes dos campos para orientar a leitura. Não interprete a presença de uma licença como um teste de funcionamento do driver, nem uma dependência declarada como o estado atual do kernel.
Mostrar somente a localização
modinfo -n overlay
A opção -n seleciona filename e evita imprimir os demais campos. Para um módulo fornecido como arquivo separado, confira se o caminho pertence à versão de kernel que você pretendia examinar. O caminho encontrado não significa que esse arquivo esteja carregado ou seja compatível com qualquer outro kernel.
Na implementação atual de kmod, um componente embutido pode aparecer como (builtin), em vez de um caminho para um arquivo separado. O código de modinfo no projeto kmod trata essa distinção. Não use esse marcador como se fosse o nome de um arquivo.
Consultar os parâmetros aceitos
modinfo -p overlay
A opção -p mostra os parâmetros descritos nos metadados do módulo, com as informações disponíveis sobre seu significado e tipo. Ela não altera valores. A saída pode ajudar a identificar o nome correto de um parâmetro antes de consultar a documentação específica do driver.
A existência de um parâmetro não revela seu valor atualmente aplicado. Uma descrição pode mencionar valores padrão, mas isso não comprova a configuração em execução. Também não presuma que todos os parâmetros possam ser alterados após o carregamento. Mantenha a consulta separada de mudanças que possam afetar dispositivos e serviços.
Selecionar um campo com -F
modinfo -F license nf_conntrack
O nome license escolhe o campo de licença de nf_conntrack. Um exemplo ilustrativo de valor é:
GPL
Esse texto é um exemplo, não o resultado observado neste ambiente nem uma promessa de saída para todo módulo. Leia o valor retornado pela sua consulta. Para outros campos, substitua license por um campo realmente fornecido pelo módulo, como description.
O manual de modinfo do projeto kmod descreve a seleção de campos e lembra que alguns podem ter vários valores. Em um script, não presuma que toda consulta produza exatamente uma linha preenchida: confira o estado de saída, as mensagens de erro e os dados retornados. Saída vazia de um campo não é, sozinha, prova de ausência do módulo.
Opções principais
| Opção | Uso |
|---|---|
-n |
Seleciona filename; normalmente mostra o caminho, podendo indicar um componente embutido. |
-F campo |
Mostra os valores do campo especificado, quando presentes. |
-p |
Mostra informações dos parâmetros descritos pelo módulo. |
-k release |
Seleciona os módulos de uma versão de kernel; substitua release pela identificação real desejada. |
-V |
Mostra a versão da ferramenta e termina. |
Usar -k muda a versão consultada; não inicia esse kernel nem carrega seu módulo. Para explicitar a versão em execução no Bash, use modinfo -k "$(uname -r)" overlay. Para outro kernel instalado, escolha a identificação exata dos arquivos fornecidos pela distribuição, em vez de copiar um número de versão de um exemplo.
Ao consultar um caminho de arquivo, confira sua origem e a versão a que ele pertence. Não atribua automaticamente os metadados de um arquivo de outro kernel ao módulo que está ativo no sistema.
Quando aparece Module ... not found
- Confira se modinfo existe no ambiente. Comando não encontrado é diferente de o programa não localizar um módulo.
- Confirme o nome e a versão do kernel em execução com uname -r; verifique se você selecionou outra versão com -k.
- Verifique se os arquivos e metadados correspondentes estão disponíveis. Se informou um caminho, confira o arquivo escolhido, em vez de supor que qualquer caminho seja válido.
- Considere os recursos embutidos no kernel. A documentação de Kbuild distingue modules.builtin, que relaciona componentes embutidos, de modules.builtin.modinfo, que contém seus metadados.
A disponibilidade dessas informações depende do kernel e dos arquivos fornecidos pela distribuição. Não conclua que um recurso inexiste somente por uma consulta sem resultado, nem tente carregar ou remover módulos para resolver um erro de leitura de metadados.
No ambiente disponível para a verificação, Bash 5.3.9 do Git para Windows, modinfo não foi encontrado: a consulta de versão, a ajuda e os quatro comandos dos exemplos retornaram 127. A sintaxe dos comandos também foi conferida, mas não houve consulta nativa a módulos Linux nem confirmação de parâmetros ou licenças de módulos reais nesse ambiente.
Pergunta frequente
Se modinfo mostra informações, o módulo já está carregado?
Não. Modinfo consulta metadados de arquivos ou componentes embutidos disponíveis para a versão selecionada. Use lsmod para consultar módulos carregados e lembre que recursos compilados diretamente no kernel não precisam aparecer nessa listagem. Se não houver resultado em modinfo, confira nome, caminho, versão e metadados antes de concluir que o recurso não existe.




