1 参考链接

[1] NVIDIA 官方CUDA安装文档: http://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html

[2] NVIDIA  对XFree86 下安装驱动的说明: http://us.download.nvidia.com/XFree86/Linux-x86/319.12/README/installdriver.html

[3] Ubuntu 官方编译内核教程: https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel

[4] Secure Boot: https://askubuntu.com/questions/755238/why-disabling-secure-boot-is-enforced-policy-when-installing-3rd-party-modules

2 坑之一二

2.1 错误log:/ver/log/nvidia-installer.log

ERROR: The kernel module failed to load, because it was not signed by a key

that is trusted by the kernel. Please try installing the driver again.

and sign the kernel when prompted to do so.

ERROR:  Unable to load the kernel module 'nvidia.ko'. This happens most

frequently when this kernel module was built against the wrong or

improperly configured kernel sources, with a version of gcc that 

                differs from the one used to build the target kernel(1), or if a driver

such as rivafb, nvidiafb. or nouveau is present and prevents the

NVIDIA kernel module from obtaining ownership of the NVIDIA

graphics device(s), or no NVIDIA GPU installed in this system is

supported by this NVIDIA Linux graphics driver release.

Kernel module compilation complete.

The target kernel has CONFIG_MODULE_SIG set. which means that is supports

cryptographic signature on kernel modules. On some system, the kernel may refuse

to load modules without a valid signature from a trusted key. This system also has 

UEFI Secure Boot enabled; many distrubtions enforce module signature verification

on UEFI systems when Secure Boot is enabled(2). Would you like sign the NVIDIA kernel

module? (Answer: Install without signing)

Kernel module load error: Required key not avaliable

2.2 错误分析

上面错误已经粗体下划线突出显示并标出(1),(2).

2.2.1 Ubuntu kernel version VS gcc version

检查系统Ubuntu 的Kernel 版本及其所编译使用的gcc版本:

$cat /proc/version
Linux version 4.4.0-116-generic (buildd@lgw01-amd64-021) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9) ) #140-Ubuntu SMP Mon Feb 12 21:23:04 UTC 2018

上面的输出结果对应于Ubuntu 16.06 版本. 可以看到gcc 的版本为5.4.0, 而在NVIDIA 官方cuda 安装文档[1] 中的requirement 如下


 

(为了突出重点,截去了部分), 而在系统始终保持更新的话,系统中的gcc版本应该就是5.4.0 版本,而NVIDIA 要求的却是 5.3.1. 但是根据经验还是没有问题的.

2.2.2 Secure Boot

错误(2) 的简要描述了 NVIDIA 由于由于Ubuntu 16.04 的内核编译默认设置了 CONFIG_MODULE_SIG 为真, 然后Secure Boot打开所带来的问题, 更详细的描述见参考链接[2][3]. 大意是在支持UEFI的设备上打开Secure Boot 后,Ubuntu 16.04对于添加到内核的模块更加保守, 需要持有签名才能添加到模块中, 而显卡驱动由于要添加到内核中, 所以需要签名. 在安装过程中我们也会看到NVIDIA显卡会提示是否生成签名. 如果生成成功则没有问题,如果失败则

进入BIOS关闭Secure Boot

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

以上是实践中的一些经验,欢迎讨论与批评.

ubuntu 上NVIDIA驱动和CUDA9.0 的坑之一二相关推荐

  1. 如何在r9000k 2021H上安装ubuntu和nvidia驱动

    知乎也是我写的,链接:如何在r9000k 2021H上安装ubuntu和nvidia驱动 - 知乎 (zhihu.com) 一,准备 你需要一个容量大于4g的u盘,然后在下面网站上下载lts版本的ub ...

  2. Ubuntu安装nvidia驱动418.43+cuda9.2+cudnn-v7.1

    随着pytorch版本的更新,pytorch1.2.0官方编译的库最低只支持cuda9.2.所以这里更新一下软件驱动 1. 软件下载 所有的软件都要去nvidia官方下载,网速太慢,而且有时还断,还是 ...

  3. 腾达无线网卡驱动linux,在Ubuntu上安装腾达W541U V2.0 (RT2070)无线网卡驱动【使用2011新驱动】...

    这个腾达W541U V2.0 (RT2070)无线网卡,实在无语,网上已经有够多的帖子谈它的驱动问题了.经过一翻折腾,今天在Ubuntu上把安装腾达W541U V2.0 (RT2070)无线网卡驱动过 ...

  4. ubuntu18.04+nvidia显卡安装+cuda9.0+cudnn7+pycharm2018.2专业版激活+anaconda3+tensorflow-gpu1.6.0+keras+opencv3

    写文的目的:笔记本和台式机的安装是略有不同的,为了以后查阅方便,记录下安装细节 目标:在台式机上安装上ubuntu18.04+nvidia显卡安装+cuda9.0+cudnn7+anaconda3+t ...

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

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

  6. Ubuntu17.04+Nvidia GT 640LE+CUDA9.0+cuDNN7.05+Tensorflow1.5r0(GPU)+Anaconda5.01(python3.6)安装

    Ubuntu17.04+Nvidia GT 640LE+CUDA9.0+cuDNN7.05+Tensorflow1.5r0(GPU)+Anaconda5.01(python3.6)安装 一.详细的安装 ...

  7. Ubuntu系统---nvidia驱动下载之问题

                                                                             Ubuntu系统---nvidia驱动下载之问题 百度 ...

  8. Ubuntu解决Nvidia驱动缺失导致的HDMI无法输出问题

    Ubuntu解决Nvidia驱动缺失导致的HDMI无法输出问题 参考文章: (1)Ubuntu解决Nvidia驱动缺失导致的HDMI无法输出问题 (2)https://www.cnblogs.com/ ...

  9. Ubuntu 卸载 Nvidia 驱动和安装最新驱动

    link NVIDIA> 驱动程序下载 GTC 2021 DLI Workshop Studio Holiday Frames Win Games NVIDIA 驱动程序下载 在下方的下拉列表中 ...

最新文章

  1. 本地 无法启动 SQL Server 错误代码126
  2. ROS_Kinetic ubuntu 16.04
  3. html游戏怎么做,HTML5 制做“游戏”的一个基本流程
  4. HttpClient 4 API –获取状态代码-getStatusLine()。getStatusCode()示例
  5. python子进程关闭fd_python – 捕获崩溃的子进程的“分段错误”...
  6. C语言课程设计报告输出杨辉三角,C语言学习:在屏幕上输出杨辉三角
  7. ASP.NET Web API 数据提供系统相关类型及其关系
  8. [编程启蒙游戏] 2. 奇偶数
  9. Windows平台下搭建自己的Git服务器
  10. MediaStreamAudioSourceNode
  11. java map failed_java.lang.OutOfMemoryError:Map failed总结
  12. Java总结IO之总集篇
  13. Android下的蓝牙自动配对
  14. 黑苹果 10.15.1 安装教程 11月最新版
  15. 2021年最受数据分析师欢迎的副业排行榜TOP1
  16. 基本光照与阴影(一)
  17. 计算机底层架构(偏硬件)综述
  18. 基于深度学习的依存句法分析进展
  19. PID循迹机器人及整定
  20. 【论文摘要】基于多数投票模式和超混沌加密的彩色图像鲁棒安全零水印算法

热门文章

  1. 你需要知道的基础算法知识——STL和基础数据结构(六)
  2. linux怎么调用inb函数,outb()函数 Unix/Linux
  3. 计算机考试上机安排,全国计算机等级考试模拟上机安排(最终版).doc
  4. git linux 部署网站,centos 搭建git自动部署web应用
  5. MyEclipse6.5安装SVN插件的三种方法
  6. SpringBoot2 | Spring IOC 流程中核心扩展接口的12个扩展点源码分析(十一)
  7. Android8.0适配-Only fullscreen opaque activities can request orientation
  8. saltstack之基础入门系列文章简介
  9. MyBatis学习笔记(四) 注解
  10. [LeetCode]238.Product of Array Except Self