NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver解决办法
2023.3.17更新
今天突然又出现这个问题,一开始我就以为内核自动更新,便想去降低内核版本,一看旧版本的内核,发现都被自动删除了,然后我之前也将内核自动更新取消了啊,输入命令dpkg --get-selections | grep linux-image
打印内核版本显示也是hold
,按道理内核并没有更新。
一开始没发现问题,便一直尝试下载旧版本内核来解决,一直没成功。最后无意间在ubuntu的应用中点开nvidia x server settings
将选择nvidia on-demand
,再重启系统就可以了(原来选项选的是intel 省电模式
,太坑了。。。)
1. 问题描述
NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver.
Make sure that the latest NVIDIA driver is installed and running.
本来好好的,突然出现这个问题一般是内核自动更新,导致内核版本与显卡驱动不匹配的问题,解决办法最好是把内核版本降到之前的版本
2.切换到原来的内核
(1)如果ubuntu有图形化界面,则可以通过以下方法切换内核
(2)如果ubuntu没有图形化界面(远程控制的服务器那种),则可以通过以下方法切换内核
grub-install --version
grep 'menuentry' /boot/grub/grub.cfg
例如,这里我想要更换为5.8.0-50,就找到对应的选项,有
menuentry 'Ubuntu,Linux 5.8.0-50-generic' --class ubuntu
--class gnu-linux --class gnu --class os $menuentry_id_option
'gnulinux-5.8.0-50-generic-advanced-237310b8-5d8a-4e13-bcbd-37ef97be8341' {
比如我是Ubuntu,Linux 5.8.0-50-generic
- 修改grub
在终端中输入
sudo nano /etc/default/grub
将第一个
GRUB_DEFAULT=0
GRUB_DEFAULT = "Ubuntu,Linux 5.8.0-50-generic"
(注意要加双引号)
- 更新grub设置
在终端中输入
sudo update-grub
Please don't use old title 'Ubuntu,Linux 5.8.0-50-generic' for GRUB_DEFAULT,
use 'Advanced options for Ubuntu>Ubuntu,Linux 5.8.0-50-generic'
(for versions before 2.00) or
'gnulinux-advanced-237310b8-5d8a-4e13-bcbd-37ef97be8341>gnulinux-5.8.0-50-generic-
advanced-237310b8-5d8a-4e13-bcbd-37ef97be8341' (for 2.00 or later)
则根据之前看到的grub版本,如果大于等于2.00,则把上面第三个单引号内的字符串复制粘贴.否则把第二个单引号内的字符串复制粘贴,也就是说一定要重新修改一次grub
GRUB_DEFAULT="Ubuntu,Linux 5.8.0-50-generic"
修改为
GRUB_DEFAULT="gnulinux-advanced-237310b8-5d8a-4e13-bcbd-
37ef97be8341>gnulinux-5.8.0-50-generic-
advanced-237310b8-5d8a-4e13-bcbd-37ef97be8341"`
否则修改为
GRUB_DEFAULT="Advanced options for Ubuntu>Ubuntu,Linux 5.8.0-50-generic"
一定要再次修改一次GRUB_DEFAULT!!!注意看清楚是第二个单引号和第三个单引号内的内容!!!
- 再次在终端中输入
sudo update-grub
- 重新启动
sudo reboot
注意,此时grub引导时光标默认指向的应该是Ubuntu高级选项之类的选项,不要移动光标,让它自动选择启动
uname -r
如果已经变成你想要改的内核版本,则继续,否则检查是否忘了sudo update-grub或者grub修改错误
3.删除更新的内核
dpkg --get-selections | grep linux-image
linux-image-5.10.0-1023-oem install
linux-image-5.4.0-42-generic install
linux-image-5.8.0-50-generic install
linux-image-generic-hwe-20.04 install
找到更新后的内核名字(一开始记住的内核版本信息),删除该内核
sudo apt-get remove linux-image-5.10.0-1023-oem
sudo dpkg -P linux-image-5.10.0-1023-oem
最后别忘记修改/etc/default/grub的GRUB_DEFAULT为=0
,以及sudo update-grub
(如果是采用第二种切换内核的方法才需要,第一种不需要)
4.禁止内核自动更新
(1)输入:
sudo gedit /etc/apt/apt.conf.d/10periodic
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
APT::Periodic::Update-Package-Lists "2";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "1";
(2)输入:
sudo gedit /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
APT::Periodic::Update-Package-Lists "2";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "1";
sudo apt-mark hold linux-image-generic linux-headers-generic
sudo apt-mark unhold linux-image-generic linux-headers-generic
原文地址:https://blog.csdn.net/weixin_48319333/article/details/127904278
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_39766.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!