解决问题:NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that ....
1. 前言
砚上三五笔,落墨鹧鸪啼
事情起因:电脑两个操作系统,一个Windows另一个为Linux,但Linux重启突然发现竟然自动从20.04更新到了22.04,同时控制台输入nvidia-smi后显示:
Nvidia-SMI has failed because it couldn’t communicate with the NVIDIA deriver …
我下意识的意识到有可能显卡驱动有问题,毕竟神不知鬼不觉的更新到了22.04版本,显卡驱动也许和新版本不兼容?我其实是这么想的。
但很奇怪得是,控制台调出指令查看到起始显卡驱动还在,但就是没办法识别和启动,这就很奇怪了,难道不是版本更新的问题?也不是显卡驱动版本的问题?
就在这时我查阅到是Linux内核导致的,这不禁让我产生了思考....
2. 正文
2.1 解决方法
先说如何解决。
首先千万千万别去更新显卡驱动或者重装系统!!!!
1. 查看目前内核版本。
uname -r
2. 查看内核版本有哪些
grep menuentry /boot/grub/grub.cfg
出现多处类似menuentry 'Ubuntu,Linux 5.4.0-60-generic' --class gnu-linux 这些
3. 修改开机系统启动
sudo vim /etc/default/grub
- 这里修改第一行
GRUB_DEFAULT =0更改为:GRUB_DEFAULT="1>xxx"启动时第2项 选择第xxx+1个版本
这个至于这个数字"1>xxx"是怎么来的,可以参考这篇博客:https://zhuanlan.zhihu.com/p/680403046
4. 更新文件
sudo update-grub
5. 重启系统
sudo reboot
这时控制条输出就OK了,实在不行可以双系统切换的时候手动进入 Advantaged options for ubuntu...,然后选择内核就可以了,会发现里面有recovery版本的和没有的,前者我理解为是备份性质的,一般选择后者即可。
2.2 相关知识
Linux内核,kernel,是Linux操作系统的核心组件,负责管理系统的硬件资源、进程调度、内存管理、设备驱动等核心功能。
具体体现就比如标题的那个错误(hhh),但就是找不到显卡驱动在哪里,但是我显卡驱动也确实装上了,但他找不到。总结为一下几点:
- 核心控制层:直接管理CPU、内存、硬盘等硬件,决定哪个程序能用硬件、怎么用。
- 资源调度中心:像交通警察,分配算力、内存、网络等资源,确保多个程序有序运行。
- 抽象接口:为上层软件(如APP)提供简单统一的硬件操作接口,隐藏复杂细节。
说白了就是用户软件层和硬件层的中间件。
我这边主要是用来实现isaac_lab,官方文档有这么一段话:
NVIDIA driver version 535.216.01 or later is recommended when upgrading to Ubuntu 22.04.5 kernel 6.8.0-48-generic or later
3. 后记
参考链接:
https://blog.csdn.net/qq_36441393/article/details/112536595
https://blog.csdn.net/Terrence_Z/article/details/121921389
https://www.cnblogs.com/still-smile/p/11597620.html
https://zhuanlan.zhihu.com/p/680403046
To be continued.......

浙公网安备 33010602011771号