NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver. Make sure that the

在Ubuntu系统更新内核后,CUDA程序无法找到驱动。问题源于新内核与驱动不匹配。通过查看并确认当前内核版本,然后安装dkms并针对新内核重新安装CUDA驱动,解决了驱动缺失的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

疫情啥时候结束呢???

问题描述:在宿舍隔离了一个月之后,打开ubuntu,使用sudo apt update更新了一下系统,结果运行cuda程序时,发现驱动找不见了,使用nvidia-smi查看显卡,也显示NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

嘚,我以为驱动又没了(其实是重装习惯了),在我拿出祖传驱动文件就要重装时,提示我,我已经安装了这个版本的驱动,你还要重新装吗,~~en,此事莫那么简单[doge],我选择了不重装,一番搜索大佬们踩过的坑,我悟了,嘿。。。

解决方案
原因:我更新了系统内核,,而驱动还”记得“是以前的内核版本,所以两者不匹配了

查看正在使用的内核版本:

uname -a

我这里的的输出结果为:

Linux a504-701 5.4.0-107-generic #121~18.04.1-Ubuntu SMP Thu Mar 24 17:21:33 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

查看已安装的内核:

dpkg --get-selections |grep linux-image

输出如下:

linux-image-5.4.0-100-generic			install
linux-image-5.4.0-104-generic			install
linux-image-5.4.0-107-generic			install
linux-image-5.4.0-84-generic			deinstall
linux-image-5.4.0-92-generic			deinstall
linux-image-generic-hwe-18.04			install

输入如下命令:

sudo apt-get install dkms # 安装dkms
sudo dkms install -m nvidia -v 470.103.01 # 470.103.01为驱动版本号,按照自己的驱动版本改一下

输出如下:

Creating symlink /var/lib/dkms/nvidia/470.103.01/source ->
                 /usr/src/nvidia-470.103.01

DKMS: add completed.

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
'make' -j32 NV_EXCLUDE_BUILD_MODULES='' KERNEL_UNAME=5.4.0-107-generic IGNORE_CC_MISMATCH='' modules.......
cleaning build area...

DKMS: build completed.

nvidia.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.4.0-107-generic/updates/dkms/

nvidia-uvm.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.4.0-107-generic/updates/dkms/

nvidia-modeset.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.4.0-107-generic/updates/dkms/

nvidia-drm.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.4.0-107-generic/updates/dkms/

nvidia-peermem.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/5.4.0-107-generic/updates/dkms/

depmod...

DKMS: install completed.

之后,nvidia-smi查看驱动,成功

### 解决方案 当遇到 `NVIDIA-SMI` 无法与 NVIDIA 驱动程序通信的问题时,通常是因为驱动未正确安装或运行环境存在问题。以下是可能的原因以及解决方案: #### 可能原因分析 1. **驱动版本不匹配**:已安装的 NVIDIA 驱动版本可能与当前 GPU 或操作系统需求不符[^1]。 2. **服务未启动**:某些情况下,即使驱动已安装完成,GPU 的相关服务(如 `nvidia-persistenced.service` 和 `nvidia-modprobe.service`)可能尚未正常加载[^2]。 3. **硬件兼容性问题**:如果使用的显卡型号较新而驱动版本过旧,则可能导致通信失败[^3]。 #### 检查方法 为了进一步确认问题所在,可以执行以下命令来获取更多信息: ```bash lsmod | grep nvidia ``` 上述命令用于查看内核模块中是否存在 NVIDIA 相关条目。如果没有输出任何内容,则表明驱动未能成功加载到内核中。 另外还可以尝试重新加载模块: ```bash sudo modprobe nvidia ``` #### 安装/修复步骤 对于已经通过 `sudo apt-get install -y cuda-drivers` 命令安装却仍然报错的情况,建议按照如下方式排查并解决问题: 1. 卸载现有驱动及其残留文件: ```bash sudo apt-get --purge remove "*cuda*" "nvidia*" ``` 2. 更新系统包索引表,并清理缓存数据: ```bash sudo apt update && sudo apt upgrade -y sudo apt autoremove -y ``` 3. 添加官方 PPA 资源库以便获得最新稳定版驱动支持: ```bash distribution=$(. /etc/os-release;echo $ID$VERSION_ID) curl -s -L https://nvidia.github.io/libnvidia-container/gpgkey | sudo apt-key add - curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt update ``` 4. 再次安装适合本机配置的最佳推荐驱动组合: ```bash sudo ubuntu-drivers autoinstall ``` 5. 最后重启计算机使更改生效前先禁用 nouveau 开源图形栈以免冲突干扰: ```bash echo 'blacklist nouveau' | sudo tee -a /etc/modprobe.d/blacklist.conf echo 'options nouveau modeset=0' | sudo tee -a /etc/modprobe.d/blacklist-nouveau.conf sudo update-initramfs -u reboot now ``` 完成以上操作之后再试一次输入 `nvidia-smi` 查看状态是否恢复正常。 --- ### 注意事项 - 如果仍存在错误提示,请核查 BIOS 设置里是否有针对集成显卡优先级选项调整为独显模式开启;或者考虑更换更高适配性的专用驱动版本测试效果如何变化。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

放羊Wa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值