Linux系統下安裝NVIDIA顯卡驅動+配置CUDA(Ubuntu 18.04.4LTS+NVIDIA-Linux440.82+CUDA10.2)

系統與顯卡信息

我使用的是Linux桌面是Ubuntu18.04.4LTS
顯卡是NVIDIA的GeForce MX250
查到自己的顯卡型號,可以去官網上檢查此型號的顯卡是否支持CUDA

附:檢查自己計算機顯卡型號
計算機-管理-系統工具-設備管理器-顯示適配器
查到信號可以去官網看看是否支持CUDA
支持CUDA的NVIDIA-GPU列表

不在列表上也不一定不支持CUDA加速,最便捷的查看方法就是安裝GPU-Z
具體方法

下載CUDA10.2以及其對應版本的NVIDIA顯卡驅動

我下載的cuda版本是10.2.89_440.33.01
這意味着所需的NVIDIA顯卡驅動版本至少是440以上的
CUDA下載地址
NVIDIA顯卡驅動下載地址

禁止集成的nouveau驅動

這一步需要修改blacklist.config,這玩意是隻讀的,需要用修改屬性命令:

sudo chmod 666 /etc/modprobe.d/blacklist.conf

用gredit編輯器打開blacklist.config

sudo gedit /etc/modprobe.d/blacklist.conf

在文件最末添加如下內容:

blacklist vga16fb
blacklist nouveau
blacklist rivafb
blacklist rivatv
blacklist nvidiafb

執行如下命令,更新系統,禁用nouveau

sudo update-intramfs -u

重啓,命令如下:

sudo reboot

因爲上面重啓了,所以在這提醒一句,如果反覆安裝NVIDIA顯卡驅動始終有問題,在開機時進入BIOS關閉secure boot

關閉secure boot方法

卸載原有驅動

重啓完成後,在終端輸入如下命令檢查是否禁用nouveau成功,無輸出,表示禁用成功

lsmod | grep nouveau

按ctrl+alt+F1~F6進入tty1 ~ 6任意一個命令行界面均可
輸入用戶名密碼登錄
在命令行執行如下命令,關閉圖形界面(否則後面可能出錯)

sudo service lightdm stop
或者
sudo telinit 3

卸載原有驅動:

sudo apt-get remove nvidia-*

給驅動.run文件賦予執行權限

sudo chmod a+x NVIDIA-Linux-x86_64-440.82.run

安裝顯卡驅動

sudo ./NVIDIA-Linux-x86_64-440.82.run -no-opengl-files

除非你的計算機只有一個集成顯卡,纔不用加-no-opengl-files,否則一般的雙顯卡會出現循環登陸的問題
-no-x-check:安裝驅動時關閉X服務
-no-nouveau-check:安裝驅動時禁用nouveau
-no-opengl-files:只安裝驅動文件,不安裝OpenGL文件

掛載Nvidia驅動

modprobe nvidia

檢查驅動是否安裝成功

nvidia-smi

出現如下輸出,則安裝成功
在這裏插入圖片描述
如果出現Error:Unable to load the ‘nvidia-drm’ kernel module .

出現這個問題最有可能的原因是你安裝的Ubuntu是UEFI模式啓動的,但是在BIOS中卻打開了Security BOOT選項。正確做法是禁用該選項,方法見上文

安裝CUDA10.2

sudo sh cuda_10.2.89_440.33.01_linux.run --no-opengl-libs

配置環境變量

運行如下命令打開個人資料文件夾

sudo gedit /etc/profile

在末尾添加

export PATH=/usr/local/cuda-10.2/bin:$PAth
export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64$LD_LIBRARY_PATH

保存,重啓電腦然後進入終端測試

cd /usr/local/cuda-10.2/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery

如果result=PASS,則安裝成功,否則失敗,可能是環境未配置好或者cuda版本與驅動版本不兼容

如需卸載重裝,執行如下命令

cd /usr/local/cuda/bin
sudo ./uninstall_cuda_10.2.pl

ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory

用nvcc編譯.cu文件時若出現ImportError: libcudart.so.8.0: cannot open shared object file: No such file or directory這樣的錯誤
首先檢查/usr/local/cuda-8.0/lib64目錄,看看libcudart.so.8.0是否存在,如果不存在,則先正確安裝cuda。如果確定cuda已經存在,這個問題的出現於Linux的ldconfig命令有關

解決方法:

sudo ldconfig /usr/local/cuda-10.2/lib64 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章