NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver.

这是一个巨坑

重要的话说三遍

  • 不要更新你的Ubuntu内核
  • 不要更新你的Ubuntu内核
  • 不要更新你的Ubuntu内核

为什么呢?
因为当你更新你的内核之后,你进入的系统默认使用最新的,而这个最新的却不会把你之前安装的nvidia驱动也迁移过来,所以导致:
驱动崩坏——>重装驱动——>更新内核——>驱动崩坏——>重装驱动
的死循环。
那么现在除了重装驱动还有救么?有!
我们要去做的,就是修改系统配置使启动系统时启用我们之前的内核


在终端输入:

grep menuentry /boot/grub/grub.cfg

你就可以看见你的启动项里面的所有内核。比如我的:
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver._第1张图片
如果你没有更改过的话,那么你默认启动的是:
在这里插入图片描述
这会默认使用你最新的内核。
以我为例,我的拥有有效驱动的内核为:
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver._第2张图片
也就是高级选项下第三个内核,使用我要去在grub里面设置默认启用这个内核(当然,你在系统启动时手动选择也可以,具体grub是啥限于篇幅就不介绍了)
现在我们可以修改我们的grub配置项了:

sudo nano /etc/default/grub

以我为例,修改grub配置如下,黄线标注出来的选项默认是0,我们需要更改它到高级选项下的第三个内核,就改为"1> 2",注意">"和"2"之间有一个空格:
NVIDIA-SMI has failed because it couldn’t communicate with the NVIDIA driver._第3张图片
之后我们使用:

sudo update-grub

更新配置就完成了我们的默认内核设置。重启电脑,使用更新后的默认选项便可以挽救我们的电脑啦~~~


觉得对你有帮助的话请给我留言点赞~~

你可能感兴趣的:(工具和命令)