modinfo에서는 "모듈을 찾을 수 없습니다"라고 하는데 lsmod에서는 모듈이 로드되었다고 주장하는 이유는 무엇입니까?

modinfo에서는 "모듈을 찾을 수 없습니다"라고 하는데 lsmod에서는 모듈이 로드되었다고 주장하는 이유는 무엇입니까?

lsmod명령의 매뉴얼 페이지 에 따르면 "현재 로드된 커널 모듈"이 표시됩니다.

modinfo사용된 실제 커널 개체(.ko) 파일을 표시하는 스크립트를 작성했습니다 .

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

이제 modinfo nvidia다음 출력이 표시됩니다.

ERROR: modinfo: could not find module nvidia

이에 대한 설명이 있나요?

답변1

모듈 nvidia이 완벽하게 로드되고 정상적으로 작동합니다. 그것이 문제이다 modinfo.

modinfo일반적 /lib/modules/$(uname -r)/modules.*으로 depmod.

depmod -a모듈을 설치한 후 실행되지 않았다면 알 nvidia수 없습니다 modinfo. 이는 누군가가 모듈을 로드하는 것을 막지 않으며, insmod로드 lsmod되면 정상적으로 표시됩니다.

답변2

최근에 nvidia 드라이버를 제거한 경우 모듈이 시스템에서 제거되었을 수 있지만 여전히 initrd에 있습니다. 를 사용하여 initrd에 있는 내용을 확인할 수 있습니다 lsinitrd. 또는 커널을 다시 설치해 보고 더 이상 나타나지 않는지 확인하십시오 lsmod.

관련 정보