最近尝试在ubuntu中安装nvidia的显卡驱动以及cuda。花了近三天时间,真的如网上所说错误百出,期间甚至重装了一次ubuntu系统,搞到怀疑人生,整个都是泪- -。最终经过百般“磨难”总算安装成功。此篇博客将我的整个安装过程介绍一下,包括错误的步骤与我个人理解的错误分析,以及最终成功的安装方法。一方面作为后来人的参考,另一方面也作为我的学习记录。

-------------------------------------------------------------------------------------------------

首先说明一下我的电脑配置:

笔记本型号:DELL游匣7566(i7  8G)。双系统(win10+ubuntu)

ubuntu 系统版本:安装失败版本(14.04);安装成功版本(16.04)
显卡:nvidia   GeForce GTX 960M

注意,以下方法均未成功安装,请勿尝试,仅作错误参考)--------------------

下面先说一下我一开始的安装步骤,注意,以下说明的步骤均未安装成功,因此仅作为失败参考,如果你也出现类似情况,那么可以对照进行更改。

nvidia 官网提供的cuda安装方式有两种,一种是run文件安装,一种是deb安装

刚开始我参考一本caffe书籍的方法,用的deb安装方式,首先讲一下这个方法。

失败方法1:ubuntu14.04+cuda7.5 deb安装

我一开始的ubuntu版本是14.04,其搭配的cuda版本为7.5。因此首先从nvidia官网下载cuda7.5版本的deb文件https://developer.nvidia.com/cuda-75-downloads-archive.下载完以后,终端进入文件目录,输入如下指令:

  1. sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb
  2. sudo apt-get update
  3. sudo apt-get install cuda

接下来重启,进入循环登录的错误。(这个错误最常见!)

按Ctrl+Alt+F1,进入text mode(话说这个挺高大上的=.=),登录你的账户。卸载刚装的cuda和显卡驱动。指令如下:

  1. sudo apt-get remove --purge nvidia*
  1. sudo apt-get remove --purge cuda

sudo reboot重启电脑,此时电脑恢复原样(美滋滋)。

接下来参考网上其他博客的方法,他们都推荐用run的安装方式,于是我也开始了run尝试。

失败方法2:ubuntu14.04+cuda7.5 run安装

a) 从nvidia官网下载cuda7.5版本的run文件,https://developer.nvidia.com/cuda-75-downloads-archive,之后将其移到home目录。

b) 接下来禁用nouveau(很重要!)。在/etc/modprobe.d中创建文件blacklist-nouveau.conf,在文件中输入以下内容

  1. blacklist nouveau
  2. options nouveau modeset=0

打开终端,运行

  1. sudo update-initramfs -u

设置完毕以后可以运行

  1. lsmod | grep nouveau

检查nouveau是否禁用成功,如果运行后没有任何输出,则代表禁用成功。

c)重启电脑,到达登录界面时,按Ctrl+Alt+F1,进入text mode。

d)输入

  1. sudo service lightdm stop

关闭图形化界面(很重要!)

e)输入

  1. sudo ./cuda_7.5.18_linux.run

开始安装cuda。

接下来根据提示进行安装,遇到提示是否安装openGL,选择no(很重要!),其他选择yes以及默认配置。安装成功后,会显示installed,否则会显示failed。我的当时是显示installed。

e)输入

  1. sudo service lightdm start

重新启动图形化界面。接下来会跳到登录界面,输入密码登录。此时未出现循环登陆的错误(内心暗喜)。

f)重启电脑。检查/dev文件夹下是否有nvidia*多个文件。如果没有的话,按照官方文档里的步骤进行添加。

重点来了,我这个方法的错误就出现在这里,/dev文件夹下没有nvidia*多个文件,我按照官网公布的步骤进行添加,仍然没有,终端查询nvidia显卡驱动,竟然查不到信息。通常,如果你用cuda的run文件安装方式,它会自动帮你安装显卡驱动。现在我的问题总结下来就是,cuda装上去了,显卡驱动却未成功安装(what the fuck?!),虽然未遇到循环登录的错误,这个错误也着实让我头疼。于是卸载cuda,网上查询了一番,进行第3次安装(委屈脸//)

失败方法3:先装好NVIDIA驱动,再进行cuda.run文件安装

此时的ubuntu版本仍然是14.04。现在的想法是,上一个方法中显卡驱动未成功安装,那么是不是可以先把显卡驱动装了,再进行cuda的安装。于是进行第二次尝试:先装nvidia驱动,再装cuda。

a)去nvidia官网下载对应显卡型号的驱动,也是个run文件,网址如下:http://www.nvidia.cn/Download/index.aspx?lang=cn。下载完以后同样将其移到home路径下。

b) 打开终端,先删除旧的驱动:(虽然我的显卡驱动根本就没装上去,但为了保险起见,还是执行了这一步)

  1. sudo apt-get --purge nvidia*

c)由于之前已经禁用了nouveau,所以禁用nouveau这一步无需进行。

d)同样按Ctrl+Alt+F1,进入text mode。输入

  1. sudo service lightdm stop

关闭图形化界面

e)输入

  1. sudo ./NVIDIA....run

注意,以上sudo后面的run文件视显卡型号而变。

f)接下来进行安装,期间会跳出UEFI安全启动的相关问题,按照提示进行操作即可,问题不大。开启图形化界面

  1. sudo service lightdm start

g)接下来便出现循环登录的错误了(心力憔悴!!。。)无奈,只好再次进入text mode(此时这个仍然可以用!),卸载刚装的nvidia驱动。(进一步委屈脸//)

失败方法4:系统推荐的NVIDIA显卡驱动版本+cuda.run 文件安装

鉴于第二种失败的方法,我思考是否驱动版本不对的原因。于是这次我更换了NVIDIA的显卡驱动版本,在设置里面查询附加驱动,里面有推荐的显卡驱动版本号,这次我没有在官网上下载驱动run文件,而是直接apt-get安装了,两者其实一样。终端装完以后重启电脑,这次没有出现循环登录的问题。但问题却更严重了,系统卡在开机logo那里了!这也没法进入text mode 啊。傻傻的等了近20分钟,依然没反应,强制重启,仍是卡住,这下可绝望了,难道要我重装系统,我里面的资料都没备份啊啊啊啊!!!结局你懂得,重装认命- -

失败方法5:ubuntu16.04+cuda8.0 run文件

默默掏出U盘重装系统,装了个16.04的版本,这个系统的版本搭配cuda8.0。继续重复方法2的步骤,出现相似错误(显卡驱动装不上)。

失败方法6:先装好NVIDIA驱动,再装cuda run

错误情况同方法3(循环登录)。

-----------------------------------------------------------------------(分割线)

以上便是我的失败经历,有些细节未详细说明,大抵如此。接下来好好思考了一番,也查阅了不少资料。进行了最终的安装方法。

成功安装方法:ubuntu16.04+cuda8.0 deb安装

这个方法仅仅在失败方法1中添加了几步而已(囧),下面说明一下步骤:

a)从nvidia官网下载cuda8.0版本的deb文件https://developer.nvidia.com/cuda-80-ga2-download-archive.

b)禁用nouveau(参考前述方法)

c)无需关闭图形界面,在终端输入

  1. sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
  2. sudo apt-get update
  3. sudo apt-get install cuda

d)重启,终端输入

  1. sudo nvidia-smi
  2. sudo nvidia-settings

显示nvidia驱动信息,安装成功,同时设置里面显示驱动也为nvidia显卡,没想到步骤这么简单,仅仅在失败方法1中禁用了nouveau。

--------------------更新-------------------------

现阶段使用deb的方法是最稳定的,参考官网的教程指令就好!!

ubuntu安装nvidia驱动以及cuda教程的更多相关文章

  1. ubuntu安装nVidia驱动,遇到终端闪砾问题并解决

    安装nvidia的官方驱动之后,比起nouvean来说感觉速度快了不少. 安装该驱动很简单,但选择哪个驱动是要注意的.因为今天我试了nvidia的多个驱动后都在ubuntu下用起来并不好. 我现在的环 ...

  2. ubuntu 安装NVIDIA驱动过程

    用U盘引导安装时,提示 nouveau 0000:65:00.0: fifo: SCHED_ERROR 08 [] 解决方法: 进入grub 内核启动参数后增加 nomodeset nomodeset ...

  3. ubuntu安装nvidia驱动

    安装环境: ubuntu 版本:12.04.02 LTS  64bit nvidia 驱动版本:NVIDIA-Linux-x86_64-310.19.run nvidia 显卡:GT640 安装过程主 ...

  4. ubuntu安装显卡驱动和cuda

    NVIDIA-linux.run安装后,会出现登录页面循环,解决办法是在运行命令后加入-no-opengl-files 打开nvidia x server Settings软件,显示:You do n ...

  5. ubuntu16.04安装nvidia驱动及CUDA+cudnn

    网上查了资料,装好了,参照以下 https://blog.csdn.net/zhang970187013/article/details/81012845 https://blog.csdn.net/ ...

  6. Ubuntu16.04 Nvidia驱动、CUDA安装

    安装Nvidia驱动和CUDA时往往很费力,经常有莫名奇妙的错误,这次安装十分顺畅,权当记录一下,以方便以后再次安装. 一.Nvidia显卡驱动安装 sudo add-apt-repository p ...

  7. Ubuntu系统---安NVIDIA 驱动后 CUDA+cuDNN 安装

    Ubuntu系统---安NVIDIA 驱动后  CUDA+cuDNN 安装 --------------------------------------------@20190726--------- ...

  8. Ubuntu系统---“NVIDIA 驱动+CUDA+cuDNN ”之后 OpenCV安装

    Ubuntu系统---“NVIDIA 驱动+CUDA+cuDNN ”之后 OpenCV安装 目录: 一.OpenCV安装包下载 二.cmake安装 三.OpenCV安装 正文 一.OpenCV安装包下 ...

  9. Ubuntu系统---NVIDIA 驱动安装

    Ubuntu系统---NVIDIA 驱动安装 第一次安装“NVIDIA 驱动”,小小的激动,因为终于可以玩GPU了.预想一块GPU,盼望太久,差点放弃,感谢J姐让我捡个漏.但是,第一次新的试错过程,网 ...

随机推荐

  1. 洛谷P1328==codevs3716 生活大爆炸版石头剪刀布[NOIP 2014 day1 T1]

    P1328 生活大爆炸版石头剪刀布 1.8K通过 2.6K提交 题目提供者2014白永忻 标签模拟NOIp提高组2014 难度普及- 提交该题 讨论 题解 记录 最新讨论 Who can help m ...

  2. 【bzoj1406】[AHOI2007]密码箱

    x2 ≡ 1 mod n => x2 = k * n + 1 => n | (x + 1) * (x - 1) 令n = a * b,则 (a | x + 1 且 b | x - 1) 或 ...

  3. android 6.0编译时出现ERROR:Security problem ,see jack server log【转】

    本文转载自:http://blog.csdn.net/a567890k/article/details/52956798 最近编译Android6.0时经常出现以下错误 临时解决方法: Buildin ...

  4. Mac os x下配置 Android ndk 开发环境

    1.阅读下面之前,请确保你android sdk的开发环境已经搭建好,ADT也最好是目前最新的. 2.到http://developer.android.com/tools/sdk/ndk/index ...

  5. 02_cfork分叉进程

    fork函数.调用它就可以在当前的进程当中给它分叉出一个新的进程.分叉出的进程就可以看看它有什么特点?

  6. java笔记线程电影院卖票最终版

    * 如何解决线程安全问题呢? *  * 要想解决问题,就要知道哪些原因会导致出问题:(而且这些原因也是以后我们判断一个程序是否会有线程安全问题的标准) * A:是否是多线程环境 * B:是否有共享数据 ...

  7. Django day 33 vue中使用element-ui的使用,课程的相关介绍,vue绑定图片,课程列表接口,课程详情页面

    一:vue中使用element-ui的使用, 二:课程的相关介绍, 三:vue绑定图片, 四:课程列表接口, 五:课程详情页面

  8. BFS POJ 3126 Prime Path

    题目传送门 /* 题意:从一个数到另外一个数,每次改变一个数字,且每次是素数 BFS:先预处理1000到9999的素数,简单BFS一下.我没输出Impossible都AC,数据有点弱 */ /**** ...

  9. 387 First Unique Character in a String 字符串中的第一个唯一字符

    给定一个字符串,找到它的第一个不重复的字符,并返回它的索引.如果不存在,则返回 -1.案例:s = "leetcode"返回 0.s = "loveleetcode&qu ...

  10. Hive insert into directory 命令输出的文件没有列分隔符分析和解决

    参考资料:http://stackoverflow.com/questions/16459790/hive-insert-overwrite-directory-command-output-is-n ...