1. 程式人生 > >Ubuntu 16.04 + Nvidia 顯示卡驅動 + Cuda 8.0 (問題總結 + 解決方案)

Ubuntu 16.04 + Nvidia 顯示卡驅動 + Cuda 8.0 (問題總結 + 解決方案)

Ubuntu 16.04 + Nvidia 顯示卡驅動 + Cuda 8.0 (問題總結 + 解決方案)

安裝Nvidia驅動出現的問題
問題主要是三種,(1)迴圈登入,也就是登入之後在退出來到登入介面; (2)介面變得很大,看著心慌,哈哈;(3)登入進去了,顯示正常了,結果只有桌面背景和滑鼠。
安裝Ubuntu環境下Nvidia驅動幾種方式

總的說,安裝顯示卡驅動的方式有如下幾種:

首先,我簡單的說一下這幾中方式的具體操作,因為每個童鞋遇到的問題不一樣,這三種方式必然有一種能夠滿足你的需求,所以都值得你去試試,反正我是都試過了(此時淚崩中)。 在這三種方法中,最重要的就是你首先知道你該裝那個版本的驅動,方式如下:

sudo apt-cache search nvidia
結果如下:
這裡寫圖片描述
可以看到我的電腦最高可支援nvidia-375.66的驅動(有種說法這是支援最高的驅動,但是試了,這個說法不太對,我裝了比較版本高的驅動,成功了,所以我覺得這步可以去掉,寫出來主要是考慮更多人的需要)。有了版本就好辦了。

第一種方式,我下載了NVIDIA-Linux-x86_64-375.66.run (根據你的版本號下載),具體的安裝過程如下(可參考師弟的部落格:http://blog.csdn.net/u012759136/article/details/53355781):
解除安裝掉原有驅動

sudo apt-get purge nvidia*

在這裡插入圖片描述
這個也和重要,我的有一臺伺服器沒有這個操作,還真不行。如果使用的是runfile,則使用–uninstall 引數,當然runfile安裝的時候會解除安裝掉之前的驅動,所以可以不用手動去解除安裝。
禁用nouveau

(參考:http://www.cnblogs.com/Qwells/p/6086773.html#undefined)


新建blacklist-nouveau.conf檔案,輸入命令:

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

往檔案中寫入:

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

儲存並退出。這一步是為了禁掉Ubuntu自帶開源驅動nouveau。之後sudo reboot重啟系統。在終端執行命令:

lsmod | grep nouveau

檢視nouveau模組是否被載入。如果什麼都沒輸出,則執行下一步。
給驅動run檔案賦予執行許可權

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

Ctrl + Alt + F1 進入tty1(Ctrl + Alt + F7是回到桌面系統)出現上面的問題,根本原因在於 引數: –no-opengl-files

sudo /etc/init.d/lightdm stop
sudo ./NVIDIA-Linux-x86_64-375.20.run --no-opengl-files
sudo /etc/init.d/lightdm start

–no-opengl-files也就是不安裝opengl,這裡的原因有很多種,可能是因為ubuntu桌面系統是採用3D渲染的,可能是驅動衝突問題。當然還有其他幾個引數,都值得你去試一試:

在安裝驅動的時候,有一布問你”Would you like to run the nvidia-xconfig utility to automatically update your X configuration file…”什麼的,選擇 No。

sudo ./NVIDIA-Linux-x86_64-375.20.run --no-opengl-files –no-x-check –no-nouveau-check
–no-x-check 安裝驅動時不檢查X服務
–no-nouveau-check 安裝驅動時不檢查nouveau

重啟電腦,沒有問題,輸入命令:

nvidia-smi
出現:
這裡寫圖片描述
沒有問題,接下來裝cuda的時候不要在裝驅動了,具體選項如下:

Description

This package includes over 100+ CUDA examples that demonstrate
various CUDA programming principles, and efficient CUDA
implementation of algorithms in specific application domains.
The NVIDIA CUDA Samples License Agreement is available in
Do you accept the previously read EULA?
accept/decline/quit: accept

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 367.48?
(y)es/(n)o/(q)uit: n

Install the CUDA 8.0 Toolkit?
(y)es/(n)o/(q)uit: y

Enter Toolkit Location
[ default is /usr/local/cuda-8.0 ]:

Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y

Install the CUDA 8.0 Samples?
(y)es/(n)o/(q)uit: y

Enter CUDA Samples Location
[ default is /home/c302 ]:

Installing the CUDA Toolkit in /usr/local/cuda-8.0 …
Installing the CUDA Samples in /home/c302 …
Copying samples to /home/c302/NVIDIA_CUDA-8.0_Samples now…
Finished copying samples.

到目前為止,這種方法安裝大功告成了,我用的就是這種方法解決問題的,那麼接下來簡單的介紹另兩種方法。

小技巧提示,如果你裝驅動失敗,進不去系統了,可能有的同志不知道怎麼做了,就直接系統重灌,這是一種方式,但是最簡單的方式是,進文字tty1模式,輸入命令:

sudo /etc/init.d/lightdm stop
sudo ./NVIDIA-Linux-x86_64-375.20.run --uninstall
sudo /etc/init.d/lightdm start
系統回到從前,繼續做打不死的小強,繼續試試。

第二種,利用PPA的方式,參考是http://blog.csdn.net/qiusuoxiaozi/article/details/70195689。 配置好了PPA(不一定必須配置,看你的源有沒有),指令就是:

sudo apt-get install nvidia-375

注意,這裡的版本號nvidia-375 是通過上面的方式獲取到的(sudo apt-cache search nvidia*)。但是這種方式,並不是適合所有人,比如我試了兩臺伺服器,都是登入不進去,但是網上有博主解決了問題,說明有些童鞋是可以試試的,如果不行,就進tty1執行命令:

sudo apt-get purge nvidia-375
在這裡插入圖片描述