Perché modinfo dice "Impossibile trovare il modulo", ma lsmod afferma che il modulo è caricato?


9

Secondo la pagina man del lsmodcomando mostra "quali moduli del kernel sono attualmente caricati".

Ho scritto uno script che usa modinfoper mostrare quali file oggetto kernel (.ko) sono attualmente in uso:

#!/bin/sh
for i in `lsmod | awk '{print $1}' | sed -n '1!p'`; do
echo "###############################$i###############################"
echo ""
modinfo $i
echo ""
echo ""
done

Ora ho scoperto che modinfo nvidiamostra il seguente output:

ERROR: modinfo: could not find module nvidia

Ragazzi avete qualche spiegazione per questo?

Risposte:


10

Il tuo nvidiamodulo è perfettamente caricato e funzionante. Il problema sta nel modinfo.

modinforecuperare l'elenco dei moduli noti leggendo i /lib/modules/$(uname -r)/modules.*file, che di solito vengono aggiornati con depmod.

Se depmod -anon è stato eseguito dopo l'installazione del nvidiamodulo, modinfonon lo sa. Questo non impedisce a nessuno di caricare il modulo insmode lsmodlo mostrerà bene se caricato.


Ho eseguito sudo depmod -a ma modinfo non è ancora a conoscenza del modulo nvidia, ma lsmod lo mostra. Come può essere?
Hakaishin,

@Hakaishin Sono su Ubuntu 16.04 con i driver nvidia-410 installati e sembra che il nome del mio modulo del kernel sia nvidia_410. Quindi prova modinfo nvidia_410o simile.
Cheshirekow,

0

Se hai disinstallato di recente il tuo driver nvidia, potresti aver disinstallato il modulo dal tuo sistema, ma è ancora nel tuo initrd. Puoi controllare quali sono nel tuo initrd con lsinitrd. Oppure prova a reinstallare il kernel per vedere se non compare più lsmod.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.