错误分析:
Failed to initialize NVML: Driver/library version mismatch 表明 系统安装的 NVIDIA 驱动版本 与 当前加载的内核模块版本 不一致。常见于以下场景:
1.未完全卸载旧驱动直接安装新驱动
2.内核更新后未重新生成 NVIDIA 内核模块
3.混合安装了不同来源的驱动(如 apt 和官方 .run 文件)
解决方案
步骤 1:验证驱动状态
# 查看已安装的驱动包版本
dpkg -l | grep nvidia-driver
# 查看当前加载的内核模块版本
cat /proc/driver/nvidia/version
步骤 2:彻底卸载旧驱动
# 清除所有 NVIDIA 相关包
sudo apt purge "nvidia*" "libnvidia*"
sudo apt autoremove
# 删除残留配置
sudo rm -rf /etc/OpenCL/vendors/nvidia.icd
sudo rm -rf /usr/lib/nvidia-modprobe
步骤 3:重新安装驱动
# 添加官方驱动仓库
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
# 安装推荐驱动版本(根据显卡选择,此处以 535 为例)
sudo apt install nvidia-driver-535
# 重建内核模块
sudo dkms install -m nvidia -v 535.161.07
# 更新 initramfs
sudo update-initramfs -u
步骤 4:重启系统
sudo reboot
步骤 5:验证修复
# 检查驱动版本一致性
nvidia-smi
cat /proc/driver/nvidia/version