环境:ubuntu 16.04 desktop
    需求:run方式安装nvidia显卡驱动


    1. ubuntu 16.04默认安装了第三方开源的驱动程序nouveau,安装nvidia显卡驱动首先需要禁用nouveau,不然会碰到冲突的问题,导致无法安装nvidia显卡驱动。

    编辑文件blacklist.conf
    #sudo vim /etc/modprobe.d/blacklist.conf

    若未安装vim则sudo apt-get install vim安装或使用vi , 在文件最后部分插入以下两行内容

    blacklist nouveau
    options nouveau modeset=0

    更新系统: sudo update-initramfs -u

    重启系统(一定要重启)
    验证nouveau是否已禁用: lsmod | grep nouveau
    ubuntu安装nvidia显卡驱动 - 图1
    没有信息显示,说明nouveau已被禁用,接下来可以安装nvidia的显卡驱动。


    2. 在英伟达的官网上查找你自己电脑的显卡型号然后下载相应的驱动(网址:http://www.nvidia.cn/page/home.html),或者客户直接提供安装包。

    本实验下载的版本:NVIDIA-Linux-x86_64-396.18.run(注意不同的版本最后安装执行的具体选项不同)下载后的run文件拷贝至home目录下。

    3. 在ubuntu下按ctrl+alt+f1进入命令行界面,

    然后在命令行界面下输入: sudo service lightdm stop //这个是关闭图形界面,不执行会出错。

    然后卸载掉原有驱动: sudo apt-get remove nvidia-* (若安装过其他版本或其他方式安装过驱动执行此项)



    4. 给驱动run文件赋予执行权限:
    命令: sudo chmod a+x NVIDIA-Linux-x86_64-396.18.run

    安装:
    sudo ./NVIDIA-Linux-x86_64-396.18.run -no-x-check -no-nouveau-check -no-opengl-files
    //只有禁用opengl 这样安装才不会出现循环登陆的问题

    -no-x-check:安装驱动时关闭X服务
    -no-nouveau-check:安装驱动时禁用nouveau
    -no-opengl-files:只安装驱动文件,不安装OpenGL文件

    安装过程中的选项:(这是copy别人的,自己的没记住,我也是尝试选择了好多遍才安装好)

    The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续。
    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 without signing
    问题大概是:Nvidia’s 32-bit compatibility libraries? 选择 No 继续。
    Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 Yes 继续

    这些选项如果选择错误可能会导致安装失败,没关系,只要前面不出错,多尝试几次就好。


    5. 挂载Nvidia驱动:modprobe nvidia

    检查驱动是否安装成功:nvidia-smi

    如下所示:
    ubuntu安装nvidia显卡驱动 - 图2

    sudo reboot //重启
    然后在命令行界面下输入: sudo service lightdm start //这个是打开图形界面

    注意: 如遇失败、未识别驱动,请多重启系统几次。


    1. 安装过程中出现的错误及解决

      错误1.

      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, or if a driver such as
      rivafb/nvidiafb is present and prevents the NVIDIA kernel module from
      obtaining ownership of the NVIDIA graphics device(s), or NVIDIA GPU
      installed in this system is not supported by this NVIDIA Linux graphics
      driver release.
      遇到此问题,可以安装后面正文的方法,重新尝试安装,
      还有一个类似于此的错误,也是ERROR后面一大堆,但是kernel module后面是“nvidia-drm”,此问题是由于之前安装过驱动的残留所致,请参考第3步后重新安装。
      错误2. 在安装的最后一步,没有提示安装成功,而是显示

      Error:Unable to load the ‘nvidia-drm’ kernel module .
      出现这个问题最有可能的原因是你安装的Ubuntu是UEFI模式启动的,但是在BIOS中却打开了Security BOOT选项。 正确做法是禁用该选项,具体方式请百度(我就是这一步折腾的我,其实一直没有找到具体原因)


      参考地址:
      https://blog.csdn.net/xunan003/article/details/81665835
      https://blog.csdn.net/zhang970187013/article/details/81012845