【親測】Ubuntu16.04手動安裝nvidia顯卡驅動+CUDA 8.0--聯想服務器版(之一)

1. 針對於服務器

硬件基礎:聯想服務器,顯卡:Tesla P4

配置實驗室新服務器的時候發現,安裝Ubuntu16.04之後:

1)直接安裝nvidia驅動,用指令nvidia-smi可以測試成功,看到Tesla P4的信息;

2)用cuda 8.0直接安裝,用cuda中默認的驅動,也是安裝並測試成功;

但是以上只要一關機重啓,在Ubuntu的啓動界面,輸入密碼之後,會一直在登錄界面循環,進不去系統。

經過大量的討論與測試之後發現,應該是單獨安裝顯卡驅動或者安裝cuda的時候,顯卡驅動與cuda中自帶的OpenGL函數庫與Ubuntu自帶的OpenGL函數庫衝突了,才引起了上面的問題。

2. 解決方案

1)安裝 .run 版本的顯卡驅動,在安裝的時候,手動選擇不安裝驅動裏面的 OpenGL 文件;

2)安裝完驅動後,再安裝 .run 版本的CUDA 8.0,在安裝CUDA的時候,不要安裝驅動。

3. 實現代碼

3.1 安裝前的準備工作

1)nvidia驅動官網下載符合自己顯卡的驅動的 .run 文件;

2)卸載掉原來的nvidia驅動: sudo apt-get autoremove --purge nvidia-*
如果是 run 文件安裝的,則這樣卸載: sh ./nvidia********.run --uninstall

3)打開配置文件,禁用nouveau:sudo gedit /etc/modprobe.d/blacklist.conf

4)禁用nouveau第三方驅動,在最後一行添加:blacklist nouveau 

5)執行:sudo update-initramfs -u

6)執行或者重啓後執行:lsmod | grep nouveau , 只要沒有輸出就好了。

3.2 開始安裝驅動:

1)進入控制檯1,在終端輸入:Ctrl-Alt+F1

2)然後關閉x window界面:sudo service lightdm stop

3)將目錄切換到nvidia驅動所在的目錄下,並賦予run文件執行權限:sudo chmod a+x NVIDIA*.run

4)然後安裝:sudo ./NVIDIA*.run --no-opengl-files 。即不安裝OpenGL文件,注意no前面是兩個 - - ,其他都是一個。還有其他幾個參數可選:
--no-opengl-files 只安裝驅動文件,不安裝OpenGL文件。這個參數最重要;
--no-x-check 安裝驅動時不檢查X服務;
--no-nouveau-check 安裝驅動時不檢查nouveau;後面兩個參數可不加。

5)然後可用nvidia-smi命令測試是否可以看到顯卡信息,若能看到,即爲成功;

6)然後開啓x window界面:sudo service lightdm start

7)重啓,並不會出現循環登錄的問題.

4. 安裝cuda 8.0

待續,明天再寫





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