深度学习环境配置:Ubuntu16.04安装GTX1080Ti+CUDA9.0+cuDNN7.0完整安装教程(多链接多参考文章)
本来就对Linux不熟悉,经过几天惨痛的教训,参考了不知道多少篇文章,终于把环境装好了,每篇文章或多或少都有一些用,但没有一篇完整的能解决我安装过程碰到的问题,所以决定还是自己写一篇我安装过程的教程,有些参考的文章会给出原地址,比较大众的教程就没有给出了。
本文写于2018年7月27日,注意下时效性,有问题欢迎留言
1. 安装Ubuntu16.04
系统下载地址: http://releases.ubuntu.com/16.04/
下载64位系统:ubuntu-16.04.4-desktop-amd64.iso
- 制作系统盘安装,推荐使用UltraISO,找到一个U盘(U盘数据必须备份好)
- 打开UltraISO软件,选择菜单中的文件,打开下载好的系统
- 再选择菜单中的启动,写入硬盘映像,完成后启动U盘就做好了,之后重新启动后选择U盘启动根据提示安装系统即可,具体细节可以在网上查找相应的文章,网上非常多。
2.安装NVIDIA驱动
2.1 修改更新源
- 系统安装完成后,应该首先修改的更新源,如果不修改的话更新的镜像地址不在国内下载速度是非常慢的,用的是中科大的源(还有阿里源,清华源等等,网上一查就有了):
- 右键打开终端,一条一条执行以下命令,如果是没有桌面端的系统,可以把gedit 改成 vi 进行编辑,gedit可以像打开文本文件一样方便编辑
- cd /etc/apt/
- sudo cp sources.list sources.list.bak
- sudo gedit sources.list
- cd /etc/apt/
- 把下面的这些源添加到source.list文件头部:
- deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
- deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
- deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
- deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
- deb http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
- deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
- deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-security main restricted universe multiverse
- deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-updates main restricted universe multiverse
- deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-proposed main restricted universe multiverse
- deb-src http://mirrors.ustc.edu.cn/ubuntu/ xenial-backports main restricted universe multiverse
- deb http://mirrors.ustc.edu.cn/ubuntu/ xenial main restricted universe multiverse
- 保存后,退出文件,然后执行下面命令更新一下,等一会儿就行了,速度还是很快的
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get update
2.2 驱动下载和安装以及一些问题解决
- 接下来开始安装NVIDIA驱动了,我的显卡是GTX1080Ti,安装显卡驱动有3种方法:1.系统更新驱动 2.添加官方ppa源 3.NVIDIA官网下载安装
- 感兴趣的同学可以去查找对应的安装方式,这里我选择的安装方式是去NVIDIA官网下载Linux版本的驱动,
- 官网地址:https://www.geforce.cn/drivers 或者 https://www.nvidia.cn/Download/index.aspx?lang=cn
- 建议去左边的地址可以选择版本,右边的地址会直接给你推荐最新版本,选择你对应版本的系列选择,操作系统别选错了
- 搜索出来这么多结果,先别急着下载,BETA版本为测试版就别下载了,其次这么多版本,到底下载哪个比较好,比如我们图上第二个版本是390.77,这需要看我们CUDA的版本要求的驱动版本是多少
- 我们打开CUDA下载网站:https://developer.nvidia.com/cuda-downloads
- 我这里目前最新的版本是CUDA9.2,再选择了一系列的选项后会给出CUDA9.2的下载地址如下图:
- 可以看到,下载的文件名为cuda_9.2.148_396.37,这个396.37就是我们NVIDIA驱动版本的最低要求,可是显卡驱动目前提供的Linux版本最高也就390.77,所以我们不能安装CUDA9.2,于是我选择安装CUDA9.0,下面给出一个驱动要求表格,如果要下载CUDA其他版本请到cuda的存档地址:https://developer.nvidia.com/cuda-toolkit-archive
- 上面讲了这么多,终于要开始安装NVIDIA驱动了,CUDA9.0文件可以先下载好
1)打开终端,先删除旧的驱动:
- sudo apt-get purge nvidia*
2)禁用自带的 nouveau nvidia驱动
- 先执行下面命令,可以发现会显示一些东西,我们现在要禁用掉,使它不显示出来
- lsmod | grep nouveau
- 执行以下命令创建一个文件
- sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
- 并添加如下内容:
- blacklist nouveau
- options nouveau modeset=
- blacklist nouveau
- 然后保存文件退出,执行下面命令更新一下
- sudo update-initramfs -u
- 然后重启电脑,重启后打开终端再次输入命令
- lsmod | grep nouveau
- 如果发现什么都没显示,那么说明禁用nouveau 成功了,然后开始安装NVIDIA驱动
- 首先按Ctrl+Alt+F1进入控制台,然后输入用户名密码登陆,执行下面命令关闭图形界面
- sudo service lightdm stop
- 然后跳转到存放文件的路径再运行安装文件,比如我的文件放在Downloads目录下,命令如下:
- cd Downloads
- sudo sh NVIDIA-Linux-x86_64-390.42.run --no-opengl-files
- cd Downloads
- 必须加上 --no-opengl-files ,否则会出现题主要是三种,(1)循环登录,也就是登录之后在退出来到登录界面; (2)界面变得很大,看着心慌,哈哈;(3)登录进去了,显示正常了,结果只有桌面背景和鼠标等等
- 安装过程种有出现提示选项,这里主要注意两点(如果看不懂选项的英文,自己查字典):
- 第一点(不是所有电脑都会遇到,如果没有请忽视这1.)是安装提示 “sign the kernel module” 安装过程中提示是否sign the kernel module(为内核模块签名)
- 我当时是选择了不签名安装,于是我这里出现了错误提示 log:/ver/log/nvidia-installer.log ,查找到了相关文章:https://blog.csdn.net/lipi37/article/details/79465685
- 大意是在支持UEFI的设备上打开Secure Boot 后,Ubuntu 16.04对于添加到内核的模块更加保守, 需要持有签名才能添加到模块中, 而显卡驱动由于要添加到内核中, 所以需要签名. 在安装过程中我们也会看到NVIDIA显卡会提示是否生成签名. 如果生成成功则没有问题。如果不想生成签名就需要进入BIOS关闭Secure Boot,在Key Management中Clear Secure Boot keys。虽然找到了解决办法但我还是选择生成签名。
- 选择生成签名安装,参考文章:https://www.cnblogs.com/marky/p/8243607.html 。接下来会继续问使用已有的密钥给模块签名还是重新生成。这里选在重新生成密钥。继续下去之后,密钥会在/usr/share/nvidia/下生成一个nvidia*.der(私钥)文件和nvidia*.key(公钥)文件(这些都不用管),当提示是否删除已生成的密钥文件时,选择不删除,因为之后要用到这两个文件。继续安装程序到最后会提示无法启动模块。这是因为生成的密钥还没有添加到内核的信任库中,我们在安装完成后再导入。
- 第二点提示是”Would you like to run the nvidia-xconfig utility to automatically update your X configuration file…”什么的,选择 No。
- 待安装结束后,添加密钥到内核的信任列表中:
- sudo /etc/init.d/lightdm start //打开图形界面
- sudo mokutil --import /usr/share/nvidia/nvidia*.der //必须加上 sudo
- sudo /etc/init.d/lightdm start //打开图形界面
- 接下来提示输入密码,再次输入密码,然后
- sudo reboot //重启
- 在电脑刚启动的时候会出现一个界面,就是叫你添加密钥操作,选择 “enroll the mok” ,然后按照步骤操作,输入密码什么的,如果进错了就再执行上面的 sudo mokutil...
- 导入成功后就进入系统就可以了,图如下(取自http://elrepo.org/tiki/SecureBootKey):
- 进入系统后测试一下是否安装成功
- nvidia-smi
- nvidia-settings
- nvidia-smi
- 出现类似下面的显示,则安装成功
3.安装CUDA9.0
- 在上面已经说过了,CUDA9.2版本所需要的显卡驱动版本过高,所以这里我选择安装CUDA9.0(CUDA9.1也支持)
- 安装方法和上面类似
- 首先按Ctrl+Alt+F1进入控制台,然后输入用户名密码登陆,执行下面命令关闭图形界面
- sudo service lightdm stop
- 然后跳转到存放文件的路径再运行安装文件,比如我的文件放在Downloads目录下,命令如下:
- cd Downloads
- sudo sh cuda_9..176_384.81_linux.run
- cd Downloads
- 安装开始以后,首先是一个协议,一直按空格到底以后,输入accept。其他的操作如下所示:
- Do you accept the previously read EULA?
- accept/decline/quit: accept
- Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 384.81?
- (y)es/(n)o/(q)uit: n
- Install the CUDA 9.0 Toolkit?
- (y)es/(n)o/(q)uit: y
- Enter Toolkit Location
- [ default is /usr/local/cuda-9.0 ]:
- Do you want to install a symbolic link at /usr/local/cuda?
- (y)es/(n)o/(q)uit: y
- Install the CUDA 9.0 Samples?
- (y)es/(n)o/(q)uit: y
- Do you accept the previously read EULA?
- 第二个安装显卡驱动一定要选择no,否则之前安装的驱动就白装了,有默认选项的直接选择默认选项就可以了(直接回车)
- 安装完成后,打开图形界面配置环境变量,运行如下命令打开profile文件
- sudo service lightdm start //打开图形界面
- sudo gedit /etc/profile
- sudo service lightdm start //打开图形界面
- 打开文件后在文件末尾添加路径,也就是安装目录,命令如下:
- export PATH=/usr/local/cuda-9.0/bin:$PATH
- export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64$LD_LIBRARY_PATH
- 保存后执行一个命令后重启电脑
- sudo ldconfig
- sudo reboot
- sudo ldconfig
- 查看版本和测试CUDA的例子
- 查看版本
- nvcc --version
- 查看版本
- 编译例子测试
- cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery
- sudo make
- ./deviceQuery
- 编译例子测试
- 执行成功的话会出现下面信息:
编译例子的时候如果报错显示:CUDA driver version is insufficient for CUDA runtime version 解决方法卸载重新安装参考文章:https://www.cnblogs.com/wolflzc/p/9117291.html
- 找到对应版本,下载后先把前面的安装的卸载再安装
- 如果安装错了版本比,如我一开始装了CUDA9.2,卸载操作如下:
- sudo apt-get remove cuda
- sudo apt-get autoclean
- sudo apt-get remove cuda*
- 然后在目录切换到/esr/local/下
- cd /usr/local/
- sudo rm -r cuda-9.2
- 然后按照前面的安装CUDA的教程来就可以了
- 接下来再添加下环境变量
- sudo gedit ~/.bashrc
- 打开文件后,将下面内容添加到文件的最后面,保存后退出
- export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
- export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
- export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
- 然后设置环境变量和动态链接库,在命令行输入:
- sudo gedit /etc/profile
- 在打开的文件末尾加入:
- export PATH=/usr/local/cuda/bin:$PATH
- 保存之后,创建链接文件:
- sudo gedit /etc/ld.so.conf.d/cuda.conf
- 在打开的文件中添加如下语句:
- /usr/local/cuda/lib64
- 然后执行,使链接立即生效
- sudo ldconfig
4.安装cuDNN7.0
- 下载地址:https://developer.nvidia.com/rdp/cudnn-archive
- 进去后下载自己对应的CUDA版本的cudnn文件,如下图:
- 我是选择 cuDNN v7.0.5 Library for Linux 千万别选[Power8]的版本,我查了一下,这个是给Power8处理器使用的,由于v7.1.2版本还没提供普通版本,所以就下载了v7.0.5
- 这里下载是需要注册登陆的,要填一些调查表什么的之后才能下载,如果版本和我相同我这里提供cuDNN的百度云下载地址:
- 链接:https://pan.baidu.com/s/1Yi6IkjUDbiBmAd9Dm4YruQ 密码:k73g
- 安装过程也比较简单,下载后是一个压缩包,解压下来放在cuda的路径中就可以了
- 继续Ctrl+alt+F1进入命令模式,关闭图形界面
- sudo service lightdm stop
- 使用命令解压文件cudnn-9.0-linux-x64-v7.tgz,并且复制到cuda路径中
- tar -zxvf cudnn-9.0-linux-x64-v7.tgz
- cd cuda
- sudo cp lib64/lib* /usr/local/cuda/lib64/
- sudo cp include/cudnn.h /usr/local/cuda/include/
- tar -zxvf cudnn-9.0-linux-x64-v7.tgz
- 然后更新网络连接:
- cd /usr/local/cuda/lib64/
- sudo chmod +r libcudnn.so.7.0. //自己查看.so的版本 对应更改
- sudo ln -sf libcudnn.so.7.0. libcudnn.so.
- sudo ln -sf libcudnn.so. libcudnn.so
- sudo ldconfig
- cd /usr/local/cuda/lib64/
- 重新启动图形化界面
- sudo service lightdm start
- 没有显示出图形界面的话 按Ctrl+Alt+F7进入图形界面
- 安装完成后可用 nvcc -V 命令验证是否安装成功,若出现版本信息则表示安装成功
- 到这一步已经大功告成了,接下来就安装Anaconda,配置Python,tensorflow等软件,有机会的话还会补充。
深度学习环境配置:Ubuntu16.04安装GTX1080Ti+CUDA9.0+cuDNN7.0完整安装教程(多链接多参考文章)的更多相关文章
- 深度学习环境配置Ubuntu16.04+CUDA8.0+CUDNN5
深度学习从12年开始打响,配置深度学习环境软件一直是一个头疼的问题,如何安装显卡驱动,如何安装CUDA,如何安装CUDNN:Ubuntu官方一直吐槽Nvidia显卡驱动有问题,网上大神也给出了关闭li ...
- 深度学习环境配置:Ubuntu16.04下安装GTX1080Ti+CUDA9.0+cuDNN7.0完整安装教程(多链接多参考文章)
本来就对Linux不熟悉,经过几天惨痛的教训,参考了不知道多少篇文章,终于把环境装好了,每篇文章或多或少都有一些用,但没有一篇完整的能解决我安装过程碰到的问题,所以决定还是自己写一篇我安装过程的教程, ...
- 深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow
深度学习主机环境配置: Ubuntu16.04 + GeForce GTX 1070 + CUDA8.0 + cuDNN5.1 + TensorFlow 最近在公司做深度学习相关的学习和实验,原来一直 ...
- (转)深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0
深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0 发表于2016年07月15号由52nlp 接上文<深度学习主机攒机小记>,这台GTX10 ...
- 深度学习主机环境配置: Ubuntu16.04+GeForce GTX 1080+TensorFlow
接上文<深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0>,我们继续来安装 TensorFlow,使其支持GeForce GTX 1080显卡 ...
- 深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0
不多说,直接上干货! 深度学习主机环境配置: Ubuntu16.04+Nvidia GTX 1080+CUDA8.0
- Windows10 + eclipse + JDK1.8 + Apache Maven 3.6.0 + dl4j深度学习环境配置
Windows10 + eclipse + JDK1.8 + Apache Maven 3.6.0 + dl4j深度学习环境配置 JDK下载安装请自行,并设置好环境变量1 查看Java版本C:\Use ...
- deepin深度学习环境配置
deepin是一个精致优美的系统.最近因为工作需要在deepin上配置深度学习环境,话不多说,接下来记录下整个的配置过程. ×××本篇文章适合对深度学习环境配置有一定了解且对deepin系统感兴趣的同 ...
- Ubuntu16.04 + CUDA9.0 + cuDNN7.3 + Tensorflow-gpu-1.12 + Jupyter Notebook 深度学习环境配置
目录 一.Ubuntu16.04 LTS系统的安装 二.设置软件源的国内镜像 1. 设置方法 2.关于ubuntu镜像的小知识 三.Nvidia显卡驱动的安装 1. 首先查看显卡型号和推荐的显卡驱动 ...
随机推荐
- 如何配置nginx屏蔽恶意域名解析指向《包含隐藏nginx版本号》
恶意域名指向: 比如,有一个垃圾域名将解析指向到了你们服务器的IP,一般多一个解析可能不会有什么问题,但是现在全民备案时期,可能你的运营商会联系你,说你们的域名没备案,可能会封你们的80端口,然后会导 ...
- (转)Java Web(一) Servlet详解!!
https://www.cnblogs.com/whgk/p/6399262.html 这篇文章到上一篇,距离的有点遥远呀,隔了大概有两个月把,中间在家过了个年,哈哈~ 现在重新开始拾起,最近在看一本 ...
- AX_ClassTemplate
static void main(Args args) { THK_InterfaceDataExtract THK_InterfaceDataExtract; FormRun formRun = a ...
- Moving or disabling the package cache for Visual Studio 2017
Moving or disabling the package cache for Visual Studio 2017 | Setup & Install by Heath Stewart ...
- node-sass 不能正常安装解决办法
web前端在安装node包时,总是报错,究其原因是node-sass没有被正常安装. 根本原因是国内网络的原因. 最终的解决方法是通过淘宝的npm镜像安装node-sass 首先安装cnpm npm ...
- android6.0以上权限动态申请,有视频链接可以看效果。
android6.0以上某些权限需要动态申请,虽然现在大多的手机系统版本在6.0,但是升级到6.0及以上是迟早的事,所以如何能够更好的控制动态申请权限时能有好的提示用户,及给用户带去更好的体验,是需要 ...
- numpy 库简单使用
numpy 库简单使用 一.numpy库简介 Python标准库中提供了一个array类型,用于保存数组类型的数据,然而这个类型不支持多维数据,不适合数值运算.作为Python的第三方库numpy便有 ...
- Linux命令中:rsync和scp之间的区别
scp是把文件全部复制过去,当文件修改后还是把所有文件复制过去, rsync 第一次是把所有文件同步过去,当文件修改后,只把修改的文件同步过去 rsync -av 10.251.205.8:/usr1 ...
- pytorch 损失函数
pytorch损失函数: http://blog.csdn.net/zhangxb35/article/details/72464152?utm_source=itdadao&utm_medi ...
- oracle RAC
RAC安装步骤 1 配置共享存储 2 Grid Infrastructure软件的安装,GI主要用于cluster ,storage的管理 3 安装数据库软件 ...