Ubuntu20.04重启后,nvidia-smi出错

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


问题描述

Ubuntu20.04 重启之后,界面显示的分辨率不对,查看显卡信息出如下错误:

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

重启之前没有对显卡驱动做任何操作,只是使用sudo apt-get upgrade 做了一下系统更新。


问题分析以及解决

1 分析

首先确定显卡驱动好好的没有动,且也没有更换显卡等相关硬件。然后在重启之前的针对系统的操作,仅仅是使用sudo apt-get upgrade 更新了一下系统中的相关软件。因此猜测,更新的时候更新了系统内核,而新的系统内核可能和当前的显卡驱动不匹配。使用如下命令,查看当前系统的内核和当前系统存在的所有版本的内核:

> uname -r
5.4.0-77-generic
> grep menuentry /boot/grub/grub.cfg
if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
  menuentry_id_option=""
export menuentry_id_option
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-fb3b617b-7620-428a-83de-08de34328e80' {
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-fb3b617b-7620-428a-83de-08de34328e80' {
	menuentry 'Ubuntu, with Linux 5.4.0-77-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-77-generic-advanced-fb3b617b-7620-428a-83de-08de34328e80' {
	menuentry 'Ubuntu, with Linux 5.4.0-77-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-77-generic-recovery-fb3b617b-7620-428a-83de-08de34328e80' {
	menuentry 'Ubuntu, with Linux 5.4.0-74-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-74-generic-advanced-fb3b617b-7620-428a-83de-08de34328e80' {
	menuentry 'Ubuntu, with Linux 5.4.0-74-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.0-74-generic-recovery-fb3b617b-7620-428a-83de-08de34328e80' {
menuentry 'Windows Boot Manager (on /dev/sda3)' --class windows --class os $menuentry_id_option 'osprober-efi-14CC-72D3' {
menuentry 'UEFI Firmware Settings' $menuentry_id_option 'uefi-firmware' {

发现除了当前所在的内核还有另外一个版本(相对旧一点的)的内核:5.4.0-74-generic。
因此为了验证是否和内核更新相关,重启系统在grub启动界面选择Ubuntu Advance Option,并以低版本的内核启动。结果重启后界面的分辨率恢复正常,nvidia-smi 也能查到显卡驱动相关信息。

2 解决

确定了问题所在,那么解决方法主要是两种:
  • 删除卸载老版本的显卡驱动,并在新内核的基础上重新安装显卡驱动
  • 继续使用安装显卡驱动时的内核版本5.4.0-74-generic,卸载新更新的内核版本5.4.0-77-generic,然后禁止内核更新,一直保持当前内核
> # sudo vim /etc/default/grub
# 查看当前已安装的内核
> dpkg --get-selections| grep linux-image
linux-image-5.4.0-74-generic			install
linux-image-5.4.0-77-generic			install
linux-image-generic						install
# 卸载相应内核
> sudo apt-get remove linux-image-5.4.0-77-generic
# 禁止内核更新,保持当前内核不更新
> sudo apt-mark hold linux-image-5.4.0-74-generic 
> sudo apt-mark hold linux-headers-5.4.0-74-generic
> sudo apt-mark hold linux-modules-extra-5.4.0-74-generic

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值