ubuntu16.04 安装NVIDIA和CUDA9.2 cudNN7.1

1.安装NVIDIA驱动

重复登录的问题是因为NVIDIA驱动版本和linux内核版本不匹配导致的,因为linux内核一直在更新,更新后可能不匹配。

所以安装系统后选择不更新,也有命令,可以更新内核版本使得nvidia匹配。

(1)查询NVIDIA驱动

首先去官网(http://www.nvidia.com/Download/index.aspx?lang=en-us)查看适合自己显卡的驱动(下载runfile文件): 

2)安装驱动

先按Ctrl + Alt + F1到控制台,关闭当前图形环境 

  $sudo service lightdm stop

 

卸载可能存在的旧版本 nvidia 驱动

sudo apt-get remove --purge nvidia*
安装驱动可能需要的依赖
 $sudo apt-get update

 $sudo apt-get install dkms build-essential linux-headers-generic
把 nouveau 驱动加入黑名单并禁用用 nouveau 内核模块(如果新重装的系统,没有驱动起作用,忽略)
sudo nano /etc/modprobe.d/blacklist-nouveau.conf
 在文件 blacklist-nouveau.conf 中加入如下内容:
blacklist nouveau
options nouveau modeset=0
保存退出,执行
 sudo update-initramfs -u
ctrl+O保存。然后回车 ctrl+X 退出
reboot重启


若/boot空间不足
uname -a 查看目前在用的内核版本
dpkg --get-selections|grep linux-image 显示所有的内核版本
sudo apt remove linux-image-XXXX-generic 卸载旧内核,注意只保留最新的 两个 版本
sudo apt autoremove 清理无用的依赖

 

 
运行驱动安装文件

重启后再次进入字符终端界面(Ctrl + Alt + F1),并关闭图形界面

  $sudo service lightdm stop

安装驱动

  $sudo chmod u+x NVIDIA-Linux-x86_64-361.45.11.run

  $sudo ./NVIDIA-Linux-x86_64-361.45.11.run(sudo ./NVIDIA-Linux-x86_64-375.20.run –no-opengl-files)
或 sudo ./NVIDIA-Linux-x86_64-375.20.run –no-x-check –no-nouveau-check –no-opengl-files
kenel 不装选NO; X-config Yes

最后重新启动图形环境 
$sudo service lightdm start

可以通过以下命令确认驱动是否正确安装

$cat /proc/driver/nvidia/version

2.安装cuda8.0

9.0的时候用runfile没有安装成功,用安装包装的,ok了。安装包本地:

`sudo dpkg -i cuda-repo-ubuntu1604-9-2-local_9.2.88-1_amd64.deb`
`sudo apt-key add /var/cuda-repo-<version>/7fa2af80.pub`
`sudo apt-get update`
`sudo apt-get install cuda`

可能出现 Driver/library version mismatch 的问题,重启,或者按照此方法

需要进入安全模式安装(lightdm),在安装cuda时是可以自动安装NVIDIA驱动的,但是这样安装的驱动版本较低,且可能有问题,所以需要先安装NVIDIA驱动,在安装CUDA时选择不安装驱动。

切换到cuda_8.0.44_linux.run的目录,执行

$ sudo sh cuda_8.0.44_linux.run

 

!Note:安装的时候,要让你先看一堆文字(EULA),我们直接不停的按空格键到100%,或者Ctrl+C跳过;
遇到提示是否安装nvidia ,选择no,其他的可以一路accept, yes或回车,可以选择安装Sample,用以验证。

登录时能进入桌面,不会一直在重复登录,成功已近大半。曾经遇到过这样的情况,不过后来重装了系统,没有禁OpenGL也可以,这个有一定概率。

!Note:如果出现重复登陆情况,请卸载cuda,然后重装。
原因:是OpenGL与NVIDIA发生了什么什么的。
卸载:由于登陆进入不到图形用户界面(GUI),但我们可以进入到文本用户界面(TUI)(TUI很酷有没有?)

在登陆界面时,按Ctrl + Alt + f1,进入TUI
一定要按照这种方式卸载,不然装不上去 执行 $ sudo /usr/local/cuda-8.0/bin/uninstall_cuda_8.0.pl $ sudo /usr/bin/nvidia-uninstall 然后重启 $ sudo reboot 重新安装.run(安装时请留眼,在提示是否安装OpenGL时,应该选no)

据说这是防止重复登录的方法:问题解决:进入bios之后,关闭secure boot即可。(也有资料说需要关fast boot的,但是笔者懒得关了,也没问题) 
具体地,惠普的台式机,进入bios之后是中文的,造成了一定的阅读障碍。在安全里面,然后有个安全启动相关的菜单。进去之后立刻有一个全红的警示页面,也只是警示,看懂了进去就可以了

配置环境,在主文件夹中打开.bashrc:

gedit ./.bashrc

末尾加入一下路径,保存关闭

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
 export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64\
 ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

安装运行实例程序的相关依赖项:

$ sudo apt-get install g++ freeglut3-dev build-essential libx11-dev \
 libxmu-dev libxi-dev libglu1-mesa libglu1-mesa-dev

运行样例程序

$ cd ~/NVIDIA_CUDA-8.0_Samples/5_Simulations/nbody
$ make
$ ./nbody

如果没有装opengl 那个这个nbody运行不了,可以运行第一个,用nvcc -V来查看是否装好了。

安装完毕,可以愉快的使用了。

安装CudNN

下在对应的版本(cudnn-9.2-linux-x64-v7.1)按照官网教程,解压复制:

$ tar -xzvf cudnn-9.0-linux-x64-v7.tgz

$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h
/usr/local/cuda/lib64/libcudnn*

 






 



 

 

posted @ 2017-10-17 10:57  奔跑_少年  阅读(25554)  评论(0编辑  收藏  举报