Ubuntu18安装nvidia驱动QuadroP600

Ubuntu18.04 安装nvidia驱动QuadroP600

  写在前面:第一次安装的时候还算顺利,按照网上的教程,先在bios里面禁用Security boot,而后添加ppa源,然后直接点击software&Update进行安装,直接就成功了。所以也就没想着整理这个过程。但是期间在安装内存条的过程中重启了,不知道提前更新哪些东西或更改了什么操作导致nvidia驱动挂了,直接报错如下:

[FAILED] Failed to start Load Kernel Modules. ...

之前还以为是内存条不兼容导致的,后来仔细分析是显卡驱动挂了。如果遇到这个情况恢复很容易,**进入命令行模式(ctrl + alt + F2)**然后直接卸载之前安装的nvidia驱动,reboot,卸载命令参考步骤3,这次我遇到了很多坑,所以必须整理出来,任何Ubuntu操作系统严格按照这个顺序安装应该不会有问题。

1、下载nvidia驱动文件

# 官网链接:
https://www.nvidia.cn/Download/index.aspx?lang=cn

# Ubuntu查看NVIDIA显卡版本的命令:
lspci|grep NVIDIA

# 1. 加入显卡驱动到 ppa
sudo add-apt-repository ppa:graphics-drivers
sudo apt-get update

# 2. 查看Ubuntu推荐的驱动版本
ubuntu-drivers devices

Ubuntu18安装nvidia驱动QuadroP600_第1张图片

我的recommended显卡版本为440

然后根据你自己的操作系统和显卡版本下载合适的驱动文件NVIDIAxxx.run

Ubuntu18安装nvidia驱动QuadroP600_第2张图片

2、禁用nouveau

# 1. 新建一个文件如下:
sudo vim /etc/modprobe.d/blacklist-nouveau.conf

# 2. 在上面的文件中写入如下内容:
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

# 3. 更新一下内核
sudo update-initramfs -u

# 4. reboot 重启之后,(ctrl+alt+F2)进入命令行界面输入如下命令,如果没有任何输出说明禁用成功。
lsmod | grep nouveau



3、卸载之前安装的nvidia驱动

  这个步骤我做了n次,每次安装不成功就需要清理一遍,安装之前一定要把之前按照的nvidia驱动清楚干净。

sudo apt-get purge nvidia*

sudo apt-get autoremove nvidia*
# 我把amd驱动也卸了
sudo apt-get purge amd*  

# 也可以用nvidia提供的卸载工具来卸载
sudo /usr/lib/nvidia-uninstall


如果重新安装nvidia驱动就必须要删除之前安装的结果。


4、nvidia驱动安装过程

# 给驱动文件加操作权限
chmod a+x NVIDIAxxx.run

# 执行安装
bash ./NVIDIAxxx.run --no-opengl-files --no-x-check --no-nouveau-check

# -no-x-check:安装驱动时关闭X服务
# -no-nouveau-check:安装驱动时禁用nouveau
# -no-opengl-files:只安装驱动文件,不安装OpenGL文件,这样安装才不会出现循环登陆的问题


然后进入各个选项,答案如下:

The distribution-provided pre-install script failed! Are you sure you want to continue?

  • Continue installation

Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later?

  • No

Install NVIDIA's 32-bit compatibility libraries?

  • No

XXXXXXX sign the NVIDIA kernel module?

  • Sign the kernel moudule

… 接下来一路ok

如果没有问题执行命令:nvidia-smi,出现如下结果,表示安装成功,有问题参考后面。

Ubuntu18安装nvidia驱动QuadroP600_第3张图片

5、遇到的问题及解决方法

问题一:Error,提示cc版本不对,导致的build过程报错。

# Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later?  
选择 No 继续就会使用 gcc 来 build module,如果gcc的版本有改动的话和系统不匹配就会出现问题。

结束安装后查看gcc版本,gcc --version,果然是之前安装的gcc4.8.5,果断改为gcc7.0,切换gcc的命令:

sudo update-alternatives --config gcc

本文的系统和驱动版本下需要用gcc7.0,所以更改gcc的版本之后继续安装。

问题二:“signature not signed with a trusted key”

  解决方法:修改BIOS里面的secure boot改为disable即可,如下图所示:

Ubuntu18安装nvidia驱动QuadroP600_第4张图片

NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver

问题二:黑屏问题

  不用慌张,也不要急着重做系统,不过是显卡驱动的问题,你禁用了nouveau的驱动,又没安装上nvidia的显卡驱动所以就进不去图形界面了。

  直接进入命令行模型卸载nvidia驱动,然后删除/etc/modprobe.d/下的禁用nouveau的文件blacklist-nouveau.conf和nvidia-installer-disable-nouveau.conf后reboot即可,然后就默认使用nouveau驱动了,这个是保底方案保证安装不成功也不影响图形界面使用。

BTW

  1. 安装遇到问题是因为不够了解、
  2. 尽可能多的搜索你遇到的问题,多尝试,我来来回回至少安装了10多遍、
  3. 如果按照不成功,那么卸载重来、

参考

  1. https://blog.csdn.net/xunan003/article/details/81665835
  2. https://blog.csdn.net/CAIYUNFREEDOM/article/details/97616855
  3. https://www.cnblogs.com/abelsu/p/10625616.html

你可能感兴趣的:(CUDA)