ubuntu20.04安裝cuda10.2+pytorch+NVIDIA驅動安裝+(Installation failed log: [ERROR])


最近申請了服務器,需要自己去搭建環境,所以在此記錄下自己的辛酸搭建歷史,也為了以后自己不走彎路。話不多說直接搬運,因為我也是用的別人的方法,一路走下來很順暢。

NAVIDIA驅動安裝

第一步首先安裝英偉達驅動
因為之前吃過虧,安裝了ubuntu后直接裝了cuda,結果沒有任何效果,還連圖形界面都出現不了(因為之前按照大佬們的攻略先一步禁用了ubuntu自帶的顯卡驅動,而自己又沒有先裝英偉達驅動,所以不顯示圖形界面),所以找了各種辦法。

雖然大佬們覺得命令行方便,不過個人還是喜歡圖形界面操作,簡單快捷操作!

圖形界面操作


選擇紅框,然后繼續下面的

按照上面的步驟等待即可,這樣就完成了!

命令行操作

當然,也可以命令行操作
我直接搬運!
直接終端輸入:
sudo apt-get install gcc g++ make
gcc --version
看過一個老哥寫的博客,寫明了gcc, g++, nvidia驅動以及cuda版本對應關系,以下附上鏈接:
https://blog.csdn.net/dudu815110/article/details/87167518

卸載舊驅動

#刪除驅動
sudo apt-get purge nvidia*

如果是通過.run文件安裝的驅動則需要 cd 進入驅動安裝包所在目錄,執行以下命令即可:
sh ./驅動文件名.run --uninstall

到此以上這些,是在已經裝過顯卡驅動的人需要做的事情,如果是沒有裝過的,可以不管

禁用Nouveau

1.nouveau是ubuntu自帶的顯示驅動,會和nvidia驅動相沖突,所以在這里我們把它禁用,方法如下:

將nouveau加入黑名單
sudo vim /etc/modprobe.d/blacklist.conf

2.在文件底部加入以下內容:

blacklist nouveau
options nouveau modeset=0

3.執行命令,更新我們剛才改過的配置文件

sudo update-initramfs -u

4.完成以后,我們需要重新啟動系統

sudo reboot

5.驗證nouveau是否被禁用

輸入以下內容,若沒有任何輸出則為禁用成功

lsmod | grep nouveau

安裝驅動

添加ppa源

添加源並更新
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update

查看顯卡型號以及推薦驅動版本

ubuntu-drivers devices
PS:我是選擇的435的,不過我到這一步死活裝不了,就走圖形界面操作了

安裝驅動

安裝

sudo apt install nvidia-driver-xxx
#重啟
sudo reboot

xxx代表驅動版本,本人裝的是435,安裝完以后需要重新啟動計算機

安裝完成

nvidia-smi

出現上面的圖說明裝好了

Anaconda的安裝

在服務器上裝py環境,根據網上找到的一些博客建議,首先裝anaconda,我目前個人理解像是一個環境管理工具,在上面怎么玩也不怕崩,方便重來。安裝特別簡單,官網下載或者隨便怎么搞到安裝包,然后
bash 安裝包路徑/安裝包名.sh

安裝過程一路yes就好了,最后我看網上說anaconda會自動將環境變量添加到PATH里面,但我輸入conda后提示沒有該命令,所以還要自己手動加入環境變量。編輯 ~/.basrc ,在最后面加上
export PATH=/home/你的用戶名/anaconda3/bin:$PATH
默認路徑是這個,具體可以根據你的安裝目錄改
修改完
source ~/.bashrc
更新下環境變量就沒問題了。然后是現在我用到的一些簡單的語句
查看環境
conda env list
創建環境(以py3.7為例)
conda create -n python37 python=3.7
進入環境
source activate python37
離開環境

source deactivate

然后一些管理包的操作和pip很像就不列舉了,這里碰到個坑,在用fish shell的時候,怎么都不能進入環境,當然還以為是自己anaconda又裝崩了,然后網上搜了搜知道了,由於設計、實現的種種原因,fish 並不支持某些其它 shell (例如 bash) 支持的特性,大概就是一些命令在fish下使用會失敗,大部分都是基於bash的,所以還是安裝一些東西的時候還是別用fish吧!!

CUDA10.2安裝

啊對了,有個坑的地方nvidia-smi顯示的cuda version是驅動支持的最高版本,nvcc --version才是目前的cuda版本(我這邊用的命令行是 nvcc --V)

安裝包直接在官網下載就行,很方便可以幫忙做配置選擇,不用自己再去查
我選擇的是用run方法安裝,參考圖如下


然后直接在你的終端敲代碼就完事了,當然也可以自行下載,個人還是覺得敲代碼方便多,cv就完事了!

具體的安裝步驟參考了大佬的一篇博客,非常詳細了,ubuntu 安裝多個CUDA版本並可以隨時切換
我說幾個不一樣的地方,我的安裝包是這樣的安裝形式

PS:當初搞的時候忘了截圖,搞完才想起來要寫一篇總結,所以用的別人的圖,但過程基本一樣。
然后敲accept

X表示被選中,按enter就是取消,上圖下放已經說明
在已經有cuda10.0的情況下什么都不改直接安裝的話,會報錯
大概就是已經有一個驅動了,繼續安裝不是更新驅動,而且再裝一個(迷惑操作),所以會報錯。
然后根據大佬博客,有這幾個地方需要改(已經有cuda版本的基礎上)
取消驅動安裝

取消連接(在CUDA Toolkit按A進入高級選項)

安裝路徑貌似無所謂,我沒改,介意的話可以改到自己目錄下 ,默認是 /usr/loacl/下
然后就是install就好了
PS:安裝目錄建議記住,我當時忘記記安裝目錄,所以后面搞版本控制有點麻煩

CUDA版本切換

安裝后cuda后,我沒用大佬博客中的方法,因為我感覺會影響到其他人正常使用,我直接改了自己的環境變量,還是編輯 ~/.basrc ,在最后面加上

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

PyTorch

pytorch的安裝就很簡單了,通過pyg已經知道只支持1.4.0和1.5.0/1.5.1版本,1.4.0官網又顯示不支持cuda10.2,那么選項基本就唯一了,在之前anaconda的創建的py環境下
conda install pytorch==1.5.0 torchvision==0.6.0 cudatoolkit=10.2 -c pytorch

參考鏈接:
https://blog.csdn.net/qq_39128349/article/details/107721533
https://blog.csdn.net/qq_33264737/article/details/101735647


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM