저는 GF108M [GeForce GT 620M/630M/635M/640M LE]을 사용하고 있으며 nvidia-driver-390을 사용하고 싶습니다. 그러나 (패키지 관리자를 통해) 이 드라이버를 설치하면 nvidia-smi에서 버전 불일치( API mismatch: the client has the version 470.86, but this kernel module has the version 390.157.
)에 대해 불평하는 오류가 발생합니다. 이것은 부분적으로 설치된 것으로 보이는 NVIDIA 드라이버의 버전입니다.
nvidia(NVIDIA-Linux-x86_64-390.157.run)의 설치 프로그램을 사용하는 경우 이 문제는 없지만 패키지 관리자 버전을 사용하는 것이 좋습니다. 이 드라이버를 제거하고 패키지 관리자 버전을 다시 설치하면 문제가 다시 나타납니다.
예상 버전(NVIDIA-Linux-x86_64-470.86.run)도 설치 및 제거를 시도했지만, 물론 이 버전은 내 그래픽 카드를 지원하지 않으므로 설치가 완료되지 않고 원인을 제거할 수 없습니다. 버전 불일치.
지금까지 내 가장 좋은 단서는 다음과 같습니다.클라이언트 버전을 얻으려면 NVRM API에 대한 설명서를 어떻게/어디서 찾을 수 있습니까? 아니면 더 나은 방법은: 이러한 불량 드라이버의 잔재를 어떻게 정리할 수 있습니까?
내가 시도한 것:
- 패키지 정리 및 재설치
- 실행 파일에서 390(올바른) 및 470(문제가 있는) Nvidia 드라이버 설치 및 제거
- 커널 이미지 다시 빌드
- 커널 재설치
내가 소유한 것
Ubuntu 22.04 5.15.0-56-generic #62 - 패키지 관리자 드라이버를 사용하는 Ubuntu
GeForce GT 630M : NVIDIA 시스템 관리 인터페이스 -- v390.157 $ cat /proc/driver/nvidia/version NVRM 버전: NVIDIA UNIX x86_64 커널 모듈 390.157 Wed 10월 12일 09:19:07 UTC 2022 GCC 버전: $ cat /sys/module/nvidia/version 390.157 $ modinfo nvidia | grep 버전 버전: 390.157 srcversion: 969136205C7AF53C6F7D4AE vermagic: 5.15.0-56-generic SMP mod_unload modversions $ sudo d 메시지 [348.574962] NVRM: API 불일치: 클라이언트 버전은 470.86이지만 NVRM: 이 커널 모듈의 버전은 390.157입니다. NVRM: 이 커널 모듈과 모든 NVIDIA 드라이버 NVRM: 구성 요소의 버전이 동일한 지 확인하세요 .
답변1
관심 있는 사람을 위해 문제를 해결했습니다.
청소 후 find /usr/lib -iname "*nvidia*"
이름에 470.86이 포함된 여러 파일을 사용하여 찾았습니다. 나는 sudo find /usr/lib -iname "*nvidia*470\.86" -delete
그것들을 삭제하고 sudo find /usr/lib -iname "*nvidia*\.ko" -delete
거기에 없어야 할 다른 nvidia 파일을 삭제하고 NvidiaDetector와 같은 것만 남겨 두곤 했습니다.
올바른 드라이버를 다시 설치하고 재부팅했지만 작동하지 않았습니다.