Linux_系统_问题解决:ubuntu 系统更新重启后,nvidia显卡驱动报错

1.问题现象

环境:Ubuntu 22.04;
系统提示Software Update,更新Kernel后,重启系统,发现分辨率异常,执行nvidai-smi,提示NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver.
在这里插入图片描述

2.问题原因

系统更新内核后,内核版本与Nvidia 驱动版本不兼容导致

3.解决思路

  1. 更新驱动,以适配新内核版本
  2. 降低内核,以适配显卡驱动

笔者因为系统部分软件对Nvidia驱动版本有要求,且不确定更新驱动后能否适配新内核版本,因此采用方案2;
因具体软硬环境和系统版本差异,此方案不具有通用性,仅供参考。

3.1 查看当前内核版本

终端执行 uname -auname -mrs,下图内核版本为5.19.0;
说明:此图为降低内核版本后截的,更新版本后为6.2.0,此处仅作展示

在这里插入图片描述

3.2 使用dkms查看更新内核前,显卡驱动与内核对应关系\

dkms status
显卡驱动为:525.60.11
内核版本为:5.19.0

在这里插入图片描述

3.3 查看系统已安装内核

dpkg --get-selections | grep linux-image
可以看到,当前install 了5.19.0 与 6.2.0两个内核版本
在这里插入图片描述

3.4 查看grub.cfg 文件

gedit /boot/grub/grub.cfg

grub.cfg为系统引导文件,笔者装了双系统,可以在grub.cfg中看到5.19.0,6.2.0两个版本的启动引导配置,及Windows启动引导。

下图中,menuentry 中 ubuntu默认引导为6.2.0内核版本,但在下方submenu ‘Advanced options for Ubuntu’ 中可以看到5.19.0的版本
在这里插入图片描述

3.5 重启系统

grub引导,选择Advanced options for Ubuntu选项
选择5.19版本启动;
查看nvidia-smi
在这里插入图片描述

3.6 卸载高版本内核

目前的方法是从Advanced选项,选择低版本内核进行引导,若选择Ubuntu选项,还是进入6.2版本,因此需卸载高版本,或在grub.cfg中将5.19的引导设置为Ubuntu默认。
本文选择直接卸载高版本。

sudo apt-get remove 内核名称
在这里插入图片描述

3.7 再次查看grub.cfg文件

默认Ubuntu引导已更新为5.19.0内核版本
在这里插入图片描述

参考文档:

nvidia-smi报错:NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver 原因及避坑解决方案
内核、nvidia驱动、Cuda、cudann版本对应关系及安装
Linux 之七 Ubuntu 22.04 配置内核版本、GRUB 引导、远程桌面、包后缀(-dev、-dbg等)、Ubuntu 阶段更新
Ubuntu设置开机默认内核及删除多余内核
Linux 模块管理方法之 DKMS
linux系统下grub.cfg详解和实例操作

  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值