Por que o modinfo diz "não foi possível encontrar o módulo", mas o lsmod afirma que o módulo está carregado?

9

De acordo com a página do manual, lsmodo comando mostra “quais módulos do kernel estão atualmente carregados”.

Eu escrevi um script que usa modinfopara mostrar quais arquivos de objeto do kernel (.ko) estão realmente em uso:

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

Agora descobri que modinfo nvidiamostra a seguinte saída:

ERROR: modinfo: could not find module nvidia

Vocês têm alguma explicação para isso?

JohnnyFromBF
fonte

Respostas:

10

Seu nvidiamódulo está perfeitamente carregado e funcionando. O problema está modinfo.

modinfobusque a lista de módulos conhecidos lendo os /lib/modules/$(uname -r)/modules.*arquivos, geralmente atualizados com depmod.

Se depmod -anão foi executado após a instalação do nvidiamódulo, modinfonão o conhece. Isso não impede que alguém carregue o módulo insmode lsmodo mostrará bem se carregado.

BatchyX
fonte
Eu executei o sudo depmod -a, mas o modinfo ainda não sabe sobre o módulo nvidia, mas o lsmod o mostra. Como isso pode ser?
Hakaishin
@Hakaishin Estou no ubuntu 16.04 com os drivers nvidia-410 instalados e parece que o nome do meu módulo do kernel é nvidia_410. Então tente modinfo nvidia_410ou similar.
cheshirekow
0

Se você desinstalou recentemente o driver da nvidia, pode ter desinstalado o módulo do seu sistema, mas ele ainda está no seu initrd. Você pode verificar quais estão no seu initrd lsinitrd. Ou tente reinstalar o kernel para ver se ele não aparece mais lsmod.

drs
fonte