apt-get 업그레이드 후 Nvidia 그래픽 드라이버 및 CUDA 관련 문제


9

이전에 Nvidia의 "deb (네트워크)"설치를 사용하여 Ubuntu 14.04에 CUDA 7.5를 설치했습니다. 내가 sudo apt-get upgrade오늘 달릴 때까지 몇 달 동안 일했습니다 . 이렇게 한 후 다음과 같은 문제가 발생했습니다.

$ nvidia-smi
modprobe: ERROR: ../libkmod/libkmod-module.c:809 kmod_module_insert_module() could not find module by name='nvidia_352'
modprobe: ERROR: could not insert 'nvidia_352': Function not implemented
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

달리기 sudo nvidia-smi는 다르지 않습니다. GUI 모드로 로그인 할 수 없지만 (비밀번호를 입력 한 후 로그인 화면으로 돌아갑니다) 터미널에 액세스 할 수 있습니다.

그래픽 기능을 복원 할 수 있었지만 그 후에 CUDA를 다시 설치하는 데 어려움이 있습니다. 제발 날 좀 도와 줄 수 있니?

그래픽 복원

나는 그렇게함으로써 그래픽을 다시 작동시킬 수 있음을 발견했다

$ sudo apt-get remove --purge nvidia*
$ sudo apt-get autoremove

그런 다음 편집 /etc/apt/sources.list.d/cuda.list하여 모든 줄을 제거한 다음

$ sudo apt-get install nvidia-352

시스템을 재부팅합니다. 이 후 nvidia-smi다시 작동합니다. 그러나 여전히 CUDA를 다시 설치해야합니다.

CUDA를 다시 설치하려고 시도

나는 내용을 복원 /etc/apt/sources.list.d/cuda.list하고 나서 노력했다 sudo apt-get install cuda. 이 오류 메시지가 나타났습니다.

Loading new nvidia-352-352.93 DKMS files...
Building only for 3.13.0-68-generic
Building for architecture x86_64
Building initial module for 3.13.0-68-generic
ERROR: Cannot create report: [Errno 17] File exists: '/var/crash/nvidia-352.0.crash'
Error! Bad return status for module build on kernel: 3.13.0-68-generic (x86_64)

이 작업을 수행 한 후 시스템은 시작시 동작으로 돌아갑니다. 예를 들어, nvidia-smi위의 오류 메시지를 인쇄하고 빌드 및 실행 후에 deviceQuery비슷한 오류가 발생합니다.

./deviceQuery Starting...

 CUDA Device Query (Runtime API) version (CUDART static linking)

modprobe: ERROR: ../libkmod/libkmod-module.c:809 kmod_module_insert_module() could not find module by name='nvidia_352'
modprobe: ERROR: could not insert 'nvidia_352': Function not implemented
cudaGetDeviceCount returned 38
-> no CUDA-capable device is detected
Result = FAIL

CUDA를 처음 설치할 때 nvidia-352Nvidia 리포지토리에서 패키지를 업데이트하지 않고 CUDA를 설치 한 경우에만 작동한다는 것을 기억 합니다. 그러나 이제는 실행할 때 패키지를 sudo apt-get install cuda자동으로 업그레이드 하기 때문에 그렇게 할 수있는 옵션이없는 것 같습니다 nvidia-352.

Unpacking nvidia-352 (352.93-0ubuntu1) over (352.63-0ubuntu0.14.04.1) ...

버전을 명시 적으로 설정하려고하면

$ sudo apt-get install cuda-drivers nvidia-352=352.63-0ubuntu0.14.04.1 nvidia-352-dev=352.63-0ubuntu0.14.04.1
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies.
 cuda-drivers : Depends: nvidia-352 (>= 352.93) but 352.63-0ubuntu0.14.04.1 is to be installed
                Depends: nvidia-352-dev (>= 352.93) but 352.63-0ubuntu0.14.04.1 is to be installed
E: Unable to correct problems, you have held broken packages.

사실, 내가 사용 버전으로 시도하는 경우 352.63-0ubuntu1대신 352.63-0ubuntu0.14.04.1수행하여

$ sudo apt-get install nvidia-352=352.63-0ubuntu1

그래픽 로그인을 중단하고 nvidia-smi위의 오류 메시지를 표시 하기에 충분합니다 .

진단

$ lspci | grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation GM200 [GeForce GTX TITAN X] (rev a1)

$ dpkg -l | grep -i nvidia
ii  bbswitch-dkms                                         0.7-2ubuntu1                                        amd64        Interface for toggling the power on nVidia Optimus video cards
ii  libcuda1-352                                          352.93-0ubuntu1                                     amd64        NVIDIA CUDA runtime library
ii  nvidia-352                                            352.93-0ubuntu1                                     amd64        NVIDIA binary driver - version 352.93
ii  nvidia-352-dev                                        352.93-0ubuntu1                                     amd64        NVIDIA binary Xorg driver development files
ii  nvidia-352-uvm                                        352.93-0ubuntu1                                     amd64        Transitional package for nvidia-352
ii  nvidia-modprobe                                       352.93-0ubuntu1                                     amd64        Load the NVIDIA kernel driver and create device files
ii  nvidia-opencl-icd-352                                 352.93-0ubuntu1                                     amd64        NVIDIA OpenCL ICD
ii  nvidia-prime                                          0.6.2                                               amd64        Tools to enable NVIDIA's Prime
ii  nvidia-settings                                       352.93-0ubuntu1                                     amd64        Tool for configuring the NVIDIA graphics driver

답변:


6

나는 비슷한 문제가 있었다. 권장 버전의 nvidia 드라이버를 설치하여이 문제를 해결할 수있었습니다.

sudo apt-get install ubuntu-drivers-common

sudo ubuntu-drivers devices

sudo apt-get install <recommended version>

3
위의 명령 후에 "sudo modprobe nvidia"명령을 실행해야했는데 모든 것이 작동했습니다
MARK

@MARK modprobe에 의해 오류가 발생했습니다 : 오류 : 'nvidia_396'을 (를) 삽입 할 수 없습니다 : 필수 키를 사용할 수 없습니다. 팁이 있습니까?
Aerin

4

친구가 나를 위해 그것을 해결할 수있었습니다!

그가 나에게 보여준 해결책은 (전과 같이 모든 NVIDIA 패키지를 제거한 후)

$ sudo add-apt-repository ppa:graphics-drivers/ppa
$ sudo apt-get install nvidia-364

그런 다음 Nvidia에서 .run CUDA 설치 프로그램 (나를 위해 cuda_7.5.18_linux.run)을 다운로드하고 CUDA와 함께 패키지 된 드라이버를 설치할지 묻는 메시지가 표시 될 때 "no"를 선택하도록주의하십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.