服务器:显卡驱动重装(Ubuntu 20.04)

服务器 0

服务器最近GPU驱动老是掉,命令nvidia-smi无法输出,GPU相关代码无法运行,重启之后恢复正常。在排查之后发现是因为近期内核版本更新过,驱动出现兼容性问题,需要重装驱动。

为了避免再次因为内核版本更新出现该问题,需要关闭内核的自动升级,再重装显卡驱动。

1. 内核自动升级关闭

1.1 禁用unattended-upgrades:

打开“/etc/apt/apt.conf.d/20auto-upgrades”文件,将其中的“1”全部改成“0”,保存退出。

sudo vi /etc/apt/apt.conf.d/20auto-upgrades

1.2 禁用自动更新:

打开“/etc/apt/apt.conf.d/10periodic”文件,将其中的“1”全部改成“0”,保存退出。

sudo vi /etc/apt/apt.conf.d/10periodic

1.3 重启服务器

sudo reboot

2. 显卡驱动重装

2.1 更新软件列表,安装必要软件、依赖

安装驱动前需要更新软件列表和安装必要软件、依赖

sudo apt-get updatesudo apt-get install g++sudo apt-get install gccsudo apt-get install make

2.2 禁用nouveau驱动(通用的驱动程序)

  • 打开“/etc/modprobe.d/blacklist-nouveau.conf”文件

sudo vim /etc/modprobe.d/blacklist-nouveau.conf
  • 在文件中添加以下内容,保存并退出

blacklist nouveaublacklist lbm-nouveauoptions nouveau modeset=0alias nouveau offalias lbm-nouveau off
  • 关闭nouveau

echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf
  • 重新生成内核

sudo update-initramfs -u
  • 重启服务器

sudo reboot
  • 重启后执行下属命令,没有输出则说明nouveau禁用成功

lsmod | grep nouveau

2.3 卸载原有驱动

sudo apt-get remove --purge nvidia*

2.4 安装新驱动

  • 获取服务器支持的驱动信息

ubuntu-drivers devices

后面有“reconmmended”的驱动即为系统推荐安装的驱动程序,这里系统推荐安装的为“nvidia-driver-535-server-open”。“nvidia-driver-535-server-open”和“nvidia-driver-535-server”的区别如下:

       nvidia-driver-535-server-open:这个版本提供了开放源代码的驱动,可能具有更广泛的兼容性,并且通常由社区进行维护和更新。这个版本可能更适合那些更注重开源和自由软件的用户,或者需要在开放环境中运行的服务器。

        nvidia-driver-535-server:这个版本可能是官方提供的闭源驱动,由NVIDIA公司直接维护和支持。它通常会提供更好的性能和稳定性,但可能缺乏开源版本的某些优势。这个版本可能更适合那些对性能和稳定性有较高要求的用户,或者在闭源环境中运行的服务器。

考虑到服务器主要用途是跑深度学习模型,所以这次选择安装的驱动为“nvidia-driver-535-server”。

  • 安装驱动

sudo apt install nvidia-driver-535-server

2.5 安装后在执行“nvidia-smi”出现下述问题,重启即可

2.6 安装完成。

如果驱动还掉,可以考虑重装CUDA。

CUDA卸载可参考:服务器:CUDA卸载(Ubuntu 20.04)

CUDA安装可参考:服务器:多CUDA配置

也许您对下面的内容还感兴趣: