Comando modinfo in Linux: leggere metadati e parametri dei moduli
modinfo mostra descrizione, percorso, licenza, alias e parametri di un modulo del kernel Linux. Consulta i metadati disponibili senza caricare il modulo né modificarne le impostazioni.
Puoi indicare un nome di modulo oppure il percorso di un file. Tra i campi comuni, filename identifica il file, parm descrive i parametri supportati e depends elenca le dipendenze dichiarate. I campi disponibili dipendono dal modulo: un campo assente non equivale necessariamente a un errore.
Sintassi di base
modinfo [opzioni] NOME_MODULO
È uno schema: sostituisci NOME_MODULO con il nome effettivo e ometti le parentesi quadre. In alternativa al nome, passa il percorso di un file di modulo esistente. Non inserire il carattere |: nei manuali separa due alternative, mentre nella shell avvierebbe una pipeline.
Con un nome, la ricerca usa normalmente i moduli della versione del kernel in esecuzione, in una directory come /lib/modules/RELEASE. Un percorso esplicito identifica invece quel file; con -k RELEASE puoi scegliere un'altra raccolta di moduli installata. Queste scelte non cambiano il kernel in esecuzione. Controlla man modinfo per le opzioni della versione presente nella tua distribuzione; l'implementazione descritta qui appartiene a kmod.
Esempi di utilizzo
Leggere tutte le informazioni disponibili
modinfo overlay
Se i metadati di overlay sono disponibili, vedrai righe con il nome del campo e il suo valore, per esempio percorso, descrizione e licenza. L'elenco varia con il kernel e il modulo; non presuppone che il modulo sia già caricato. Puoi sostituire overlay con un altro modulo presente nel sistema.
Mostrare soltanto il percorso
modinfo -n overlay
-n seleziona il campo filename. Per un modulo esterno restituisce il percorso del file, che può anche essere compresso. Se kmod riconosce una funzionalità integrata nel kernel, può mostrare (builtin): in quel caso non esiste un file di modulo separato da cercare o caricare.
Consultare i parametri supportati
modinfo -p overlay
L'output elenca i parametri esposti nei metadati, con le descrizioni e i tipi disponibili. Non mostra i valori attualmente applicati al modulo caricato. Un risultato vuoto può indicare che non ci sono parametri pubblicati in quei metadati; distinguilo da un messaggio di errore sullo standard error e controlla subito lo stato di uscita con echo $?.
Da dove provengono le informazioni sul modulo?
modinfo legge i metadati dei file di modulo installati, oppure quelli disponibili per le funzionalità integrate. Per vedere i moduli effettivamente caricati usa separatamente lsmod e le sue colonne. Un modulo può essere installato senza essere caricato; dopo un aggiornamento, i file presenti su disco possono anche differire da quelli usati dal kernel avviato in precedenza.
modinfo -F license nf_conntrack
-F license seleziona soltanto il campo della licenza. Questo è un esempio illustrativo di output quando il modulo e il campo sono disponibili, non un risultato garantito per ogni sistema:
GPL
Se compare un errore come Module ... not found, verifica il nome o il percorso, la versione restituita da uname con -r e la presenza dei relativi file di modulo. Non confondere i dati ottenuti con -k per un'altra versione con lo stato del kernel attualmente avviato.
Per le funzionalità integrate, i file modules.builtin e modules.builtin.modinfo della raccolta del kernel contengono rispettivamente l'elenco e i metadati. La loro disponibilità e il supporto della versione di kmod influiscono sulle informazioni leggibili. La documentazione Kbuild sui file prodotti dal kernel ne descrive il ruolo.
Opzioni principali
| Opzione o formato | Funzione |
|---|---|
-n |
Mostra soltanto il campo filename: il percorso del modulo, oppure il valore previsto per una funzionalità integrata riconosciuta. |
-F CAMPO |
Seleziona i valori del campo indicato, normalmente uno per riga. Un campo può mancare o avere più valori, come gli alias. |
-p |
Mostra i parametri descritti nei metadati, non i loro valori correnti. |
-k RELEASE |
Usa la raccolta di moduli della versione indicata per la ricerca per nome, senza avviare quel kernel. |
-V |
Mostra la versione dello strumento. |
Precauzioni e interpretazione dei risultati
Descrizione, licenza e dipendenze sono metadati: la loro presenza non dimostra che il modulo sia caricato, compatibile con il kernel corrente o caricabile con successo. Leggere una licenza non verifica neppure l'autenticità del file.
La presenza di un parametro non ne rivela il valore attivo e non implica che possa essere modificato durante l'esecuzione. Cambiare parametri o caricare e rimuovere moduli è un'operazione diversa dalla consultazione con modinfo e può influire su dispositivi e servizi. Per questa guida non è necessario eseguire tali modifiche.
Domande frequenti
Se modinfo non restituisce informazioni, il modulo non esiste?
Non necessariamente. Controlla se è fallita la ricerca del modulo oppure se manca soltanto il campo richiesto. Verifica nome, percorso e versione del kernel; considera anche una funzionalità integrata con metadati assenti o incompleti. Un container può vedere il kernel dell'host senza avere i relativi file di modulo nel proprio filesystem: in quel caso la ricerca locale non descrive da sola le funzionalità dell'host.
Documentazione di riferimento
Il manuale modinfo di kmod descrive campi e opzioni. Per il comportamento della versione installata consulta anche il manuale locale; il codice sorgente di modinfo in kmod chiarisce la gestione dei parametri e dei moduli integrati.




