Linux(Ubuntu)系统上安装(重装)NVIDIA显卡驱动

Linux(Ubuntu)系统上安装(重装)NVIDIA显卡驱动

​ 两种方式在Linux系统上安装NVIDIA显卡驱动


1. RUN文件方式安装

​ 注:这种方式能安装NVIDIA官网上最新的驱动程序

1.1 驱动程序下载

  • 查看电脑的显卡型号
lspci | grep -i vga

在这里插入图片描述
​ 得到设备型号后(十六进制码),去The PCI ID Repositor 查找相应的型号
在这里插入图片描述

wget -c [url]

1.2 禁用集成的nouveau驱动

​ Ubuntu系统集成的显卡驱动程序是nouveau,它是第三方为NVIDIA开发的开源驱动,我们需要先将其屏蔽才能安装NVIDIA官方驱动。

  • 将驱动添加到黑名单blacklist.conf

查看blacklist.conf属性(可省去)

sudo ls -lh /etc/modprobe.d/blacklist.conf

修改blacklist.conf属性(可省去)

sudo chmod 666 /etc/modprobe.d/blacklist.conf

gedit打开blacklist.conf

sudo gedit /etc/modprobe.d/blacklist.conf

blacklist.conf末尾添加:

blacklist nouveau
options nouveau modeset=0

更新系统

sudo update-initramfs -u

重启系统

reboot
  • 验证nouveau是否禁用
lsmod | grep nouveau

没有任何输出信息说明已经被禁用

1.3 配置环境变量(重装驱动不需要这步)

gedit打开配置文件.bashrc

sudo gedit ~/.bashrc

文件末尾添加:

export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH 

使其生效

source ~/.bashrc

1.4 关闭X Server/图形桌面

  • 查询X Server是否存在
ps aux | grep X

在这里插入图片描述

  • 根据不同桌面系统进行关闭

    gdm类型桌面系统

sudo /etc/init.d/gdm stop 
sudo /etc/init.d/gdm status

​ lightdm类型桌面系统

sudo /etc/init.d/lightdm stop
sudo /etc/init.d/lightdm status

​ 或者

sudo service lightdm stop

​ 再次查询是否已经关闭

1.5 安装驱动程序

  • 卸载已有驱动程序
sudo apt-get remove nvidia-*

​ 或者

sudo apt-get purge nvidia*
  • 赋予run文件执行权限
sudo chmod a+x NVIDIA-Linux-x86_64-440.64.run
  • 是否已经完全卸载已有驱动
sudo ./NVIDIA-Linux-x86_64-440.64.run --uninstall
  • 安装驱动
sudo ./NVIDIA-Linux-x86_64-390.59.run –no-opengl-files

​ 安装的可选参数如下:

  • –no-opengl-files 只安装驱动文件,不安装OpenGL文件。这个参数最重要
  • –no-x-check 安装驱动时不检查X服务
  • –no-nouveau-check 安装驱动时不检查nouveau
    后面两个参数可不加

在安装执行的过程中,有如下可选项:

  1. The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继
  2. 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 继续
  3. Nvidia’s 32-bit compatibility libraries? 选择 No 继续
  4. 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 继续
  • 挂载驱动(可省去)
modprobe nvidia
  • 重启系统
sudo reboot
  • 检查是否安装成功
nvidia-smi

如出现以下信息,说明安装成功
在这里插入图片描述

1.6 安装过程中可能出现的问题

1.6.1 安装过程中出现DKMS安装不成功问题

​ 出现错误:Failed to install the kernel module through DKMS.

​ 解决方法:在安装过程中将DKMS的安装选择no,安装完成后执行以下代码并重启机器

sudo rmmod nvidia
sudo nvidia-smi

​ nvidia-smi 发现没有 kernel mod 会将其自动装载

1.6.2 安装完成后出现版本不匹配的问题

​ 出现错误:Failed to initialize NVML: Driver/library version mismatch.

​ 解决方法1:这个问题出现的原因是kernel mod 的 Nvidia driver 的版本没有更新,一般情况下,重启机器就能够解决,如果因为某些原因不能够重启的话,也有办法reload kernel mod

​ 总结起来就两步:1.unload nvidia kernel mod 2. reload nvidia kernel mod

​ 具体方法:

  1. 卸载nvidia kernel mod

    sudo sudo rmmod nvidia
    

    出现错误:rmmod: ERROR: Module nvidia is in use by: nvidia_modeset nvidia_uvm

    需要先卸载nvidia_modeset,nvidia_uvm

    查找依赖

    lsmod | grep nvidia
    

在这里插入图片描述
卸载相关依赖

sudo rmmod nvidia_uvm
sudo rmmod nvidia_modeset

查找依赖进程

sudo lsof -n -w  /dev/nvidia*

kill相关进程
卸载并重新安装

sudo sudo rmmod nvidia
sudo nvidia-smi

​ 解决方法2:重新安装驱动,这样一般都能解决问题

1.6.3 X Server没有关闭

​ 出现错误:You appear to be running an X server; please exit X before installing

​ 解决方法:关闭X Server

1.6.4 nvidia-drm已加载的错误

​ 出现错误:An NVIDIA kernel module ‘nvidia-drm’ appears to already be loaded in your kernel…

​ 解决方法:unload nvidia_drm

sudo lsof | grep nvidia-drm
sudo modprobe -r nvidia-drm

1.6.5 nvidia-smi失败错误

​ 出现错误:nvidia-smi has failed because it couldn’t communicate with the nvidia driver. make sure that the latest nvidia driver is installed and running.

​ 解决方法1:通过DKMS安装驱动

​ 安装DKMS

sudo apt-get install dkms

​ 查看驱动版本

cd /usr/src
ls

在这里插入图片描述
重新生成对应nvidia的驱动模块

sudo dkms install -m nvidia -v 440.64

解决方法2:重新通过run文件安装

1.6.6出现找不到cc文件的错误

​ 执行下面的语句,否则安装完成,建立软连接也无法找到cc文件

sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install make

2.通过PPA安装驱动

  • 添加Graphic Drivers PPA
sudo add-apt-repository ppa:graphics-drivers/ppa
  • 查找可用驱动版本
ubuntu-drivers devices
  • 查找本机内核版本
cat /proc/driver/nvidia/version
  • 更新驱动
sudo apt-get update
  • 安装驱动
sudo apt-get install nvidia-415

​ 或者

sudo apt-get install nvidia-driver-415 nvidia-settings nvidia-prime

参考链接

https://www.cnblogs.com/abella/p/10217959.html

https://zhuanlan.zhihu.com/p/94378201

https://blog.csdn.net/Felaim/article/details/100516282

https://blog.csdn.net/sinat_23853639/article/details/81771692?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

https://blog.csdn.net/Adam_liu94/article/details/79644282

https://www.cnblogs.com/abella/p/10217959.html

https://zhuanlan.zhihu.com/p/94378201

https://blog.csdn.net/Felaim/article/details/100516282

https://blog.csdn.net/Adam_liu94/article/details/79644282

https://blog.csdn.net/sinat_23853639/article/details/81771692?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task


版权声明:本文为weixin_43953216原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。