Nvidia显卡Failed to initialize NVML Driver/library version mismatch错误解决方案

最近GPT比较火,开始折腾了一下gpu,用来跑项目:
https://github.com/OpenTalker/SadTalker
今天运行程序突然发现用不了,经排查应该是由于NVIDIA内核驱动版本与系统驱动版本不一致导致的。

下面简单总结了这个错误的解决方案。

问题复现

在这里插入图片描述
查看系统驱动日志
cat /var/log/dpkg.log | grep nvidia
在这里插入图片描述## 问题原因分析
NVIDIA内核驱动版本与系统驱动版本不匹配。
##查看显卡驱动内核版本
cat /proc/driver/nvidia/version
NVRM version: NVIDIA UNIX x86_64 Kernel Module 470.223.02 Thu May 11 11:46:56 UTC 2023
GCC version: gcc version 11.4.0 (Ubuntu 11.4.0-1ubuntu1~22.04)
查看已安装驱动程序

dpkg --list | grep nvidia-*
在这里插入图片描述
经排查英伟达显卡驱动自动更新了,导致程序运行失败。

下面是版本回退操作,
解决方案
卸载现有驱动,重新安装
sudo /usr/bin/nvidia-uninstall
sudo apt-get --purge remove nvidia-*
sudo apt-get purge nvidia*
sudo apt-get purge libnvidia*
直到命令不输出任何内容
sudo dpkg --list | grep nvidia-*重新安装
sudo chmod a+x NVIDIA-Linux-x86_64-470.199.02.run
sudo ./NVIDIA-Linux-x86_64-470.199.02.run -no-x-check -no-nouveau-check -no-opengl-files–no-opengl-files 只安装驱动文件,不安装OpenGL文件–no-x-check 安装驱动时不检查X服务–no-nouveau-check 安装驱动时不检查nouveau

报错处理:
一,
在这里插入图片描述

1.下载官方驱动程序
清除之前残留的nvidia驱动

apt-get remove --purge nvidia*

  1. 禁止集成的nouveau驱动

Ubuntu系统集成的显卡驱动程序是nouveau,它是第三方为NVIDIA开发的开源驱动,我们需要先将其屏蔽才能安装NVIDIA官方驱动。
将驱动添加到黑名单blacklist.conf中,但是由于该文件的属性不允许修改。所以需要先修改文件属性。

创建文件:
cat /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off
options nouveau modeset=0
blacklist rivafb
blacklist vga16fb
blacklist nouveau
blacklist nvidiafb
blacklist rivatv

卸载之前安装的残留文件
sudo apt-get remove --purge xserver-xorg-video-nouveau
sudo apt-get --purge remove nvidia-*

3-0 安装依赖
sudo apt update
sudo apt install dkms build-essential linux-headers-generic

3.开始安装
安装驱动程序
$sudo chmod a+x NVIDIA-Linux-x86_64-xxx.run
$sudo sh NVIDIA-Linux-x86_64-xxx.run
#–no-x-check 关闭X服务
#–no-nouveau-check 禁用nouveau
#–no-opengl-files 不安装OpenGL文件
4-0 安装完成后
sudo update-initramfs -u 内核更新
sudo reboot

卸载残留:

要强制卸载这两个模块,你可以使用dpkg命令来操作。请按照以下步骤进行:

  1. 打开终端,以管理员权限登录到你的系统。

  2. 运行以下命令来卸载linux-modules-nvidia-450-server-6.2.0-35-generic模块:

    sudo dpkg --purge linux-modules-nvidia-450-server-6.2.0-35-generic
    ```
  3. 运行以下命令来卸载linux-objects-nvidia-450-server-6.2.0-35-generic模块:

    sudo dpkg --purge linux-objects-nvidia-450-server-6.2.0-35-generic
    ```注意:在命令中替换版本号和架构(amd64)为你系统中实际安装的版本。
  4. 当命令执行完成后,这两个模块应该已被强制卸载。

最终效果:
在这里插入图片描述其他命令:

升级显卡驱动命令
输入如下指令查看系统推荐的驱动版本:
sudo ubuntu-drivers devices

auturemove命令
在Ubuntu中,你可以使用autoremove命令来自动删除不再需要的软件包和依赖项。这些软件包通常是由于你升级或删除其他软件包而变得不再需要的。

要使用autoremove命令,请按照以下步骤进行:

  1. 打开终端。

  2. 以管理员权限登录到你的系统。

  3. 运行以下命令来使用autoremove

    sudo apt autoremove
    ```
  4. 命令将扫描系统中不再需要的软件包和依赖项,并提示你确认是否删除它们。请仔细阅读删除列表上的软件包,确保你不再需要它们。

  5. 如果你确认要删除这些软件包,请输入"Y"或"yes",然后按回车键。

  6. autoremove命令将自动删除这些不再需要的软件包和依赖项。

请注意,使用autoremove命令时要小心,确保你了解要删除的软件包以及其对系统的影响。建议在执行之前先进行备份,并定期进行系统维护和清理。

tips:
为避免麻烦关闭自动更新显卡驱动

1.禁止自动升级

修改配置文件/etc/apt/apt.conf.d/10periodic
#0是关闭,1是开启,将所有值改为0
vi etc/apt/apt.conf.d/10periodic
APT::Periodic::Update-Package-Lists “0”;
APT::Periodic::Download-Upgradeable-Packages “0”;
APT::Periodic::AutocleanInterval “0”;

在这里插入图片描述

执行命令:
sudo apt-mark hold linux-image-generic linux-headers-generic
在这里插入图片描述
2 使用 apt-mark hold

apt-mark hold 命令可以帮助我们锁定某个软件包的版本,这样就可以防止 Ubuntu 自动更新该软件包。在这种情况下,我们可以使用 apt-mark hold 命令来锁定显卡驱动软件包的版本,从而防止 Ubuntu 自动更新显卡驱动。具体操作步骤如下:

打开终端,使用以下命令来查看当前安装的显卡驱动软件包:
dpkg -l | grep -i nvidia
执行以下命令将该软件包的版本锁定:
sudo apt-mark hold
其中, 表示需要锁定的显卡驱动软件包的名称,例如:nvidia-driver-450。

如果需要解除锁定,我们可以使用以下命令:
sudo apt-mark unhold
需要注意的是,该方法只会禁止 Ubuntu 自动更新显卡驱动,如果我们需要安装更新版本的显卡驱动,则需要手动执行 apt-get update 和 apt-get upgrade 命令

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/134094.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux修改rocketmq的日志文件位置

文章目录 🔊修改rocketmq的日志文件位置📕原来的文件📌修改后文件📇rocketmq中的Rocketmq_client.log文件在配置文件中改不了 需要在代码logback文件中进行修改🖊️最后总结 🔊修改rocketmq的日志文件位置 …

没网络也能安装.Net 3.5!如何脱机安装.NET Framework 3.5

.NET框架是由微软制定的一个软件框架。它有助于在Windows上运行控制台、Web或移动应用程序。此有用的工具适用于Windows设备。 如何脱机安装.NET Framework 3.5 如果你拥有Windows 10、8、8.1或7,有时第三方软件可能会导致问题。你可能会在图片中看到这样的问题。 看这张照片…

新版onenet平台安全鉴权的确定与使用

根据onenet官方更新的文档:平台提供开放的API接口,用户可以通过HTTP/HTTPS调用,进行设备管理,数据查询,设备命令交互等操作,在API的基础上,根据自己的个性化需求搭建上层应用。 为提高API访问安…

棋牌室电脑计时灯控,棋牌室计时灯控安装,佳易王计时计费管理系统软件

棋牌室电脑计时灯控,棋牌室计时灯控安装,佳易王计时计费管理系统软件 棋牌室的灯可以用佳易王计时计费软件来控制开关,当开始计时的时候,软件发送开灯的指令,灯打开,在结账后,软件发送关灯指令…

Oracle 安装及 Spring 使用 Oracle

参考内容: docker安装oracle数据库史上最全步骤(带图文) Mac下oracle数据库客户端 Docker安装Oracle docker能安装oracle吗 Batch script for add a auto-increased primary key for exist table with records Docker 安装 Oracle11g 注意&a…

element 弹窗浏览器后退-遮照层还存在问题 以及跟vue keep-alive冲突

问题:element 弹窗浏览器后退-遮照层还存在问题 查询官网可以设置 modal-append-to-body“false” 可以全局设置 ElementUI.Dialog.props.modalAppendToBody.default false 后续 基本到这能解决问题,不过本项目比较特殊,使用了 keep-alive…

自定义拖拽列表

效果图 DataAnalysis.vue <template><div class"app-container"><div class"operate"><el-select class"t_select" v-model"templateName" clearable placeholder"模版" size"default" cle…

java计算机毕业设计SpringBoot在线答疑系统

项目介绍 本文从学生的功能要求出发&#xff0c;建立了在线答疑系统&#xff0c;系统中的功能模块主要是实现管理员权限&#xff1b;首页、个人中心、学生管理、教师管理、问题发布管理、疑难解答管理。教师权限&#xff1a;首页、个人中心、疑难解答管理、试卷管理、试题管理…

Halcon WPF 开发学习笔记(1):Hello World小程序

文章目录 文章专栏视频链接Hello World训练图片训练目的 开始训练图像预处理导入图像三通道处理调用算子通道选取 滤波什么是好的滤波 增加对比度 区域选取阈值处理算子参数选择运行结果(红色为选择区域) 区域分割运行结果 特征筛选参数代码第二次&#xff0c;面积筛选 画选中十…

技术分享 | 想做App测试就一定要了解的App结构

app 的结构包含了 APK 结构和 app 页面结构两个部分 APK结构 APK 是 Android Package 的缩写&#xff0c;其实就是 Android 的安装包。通过将 APK 文件直接传到 Android 模拟器或 Android 手机中执行即可安装。 APK 文件其实是 zip 格式&#xff0c;但后缀名被修改为 apk&am…

插入损耗——线对上的信号衰减

“您好&#xff0c;我需要您的帮助。我在测试长距离线缆的时候&#xff0c;插入损耗没有通过测试&#xff01;”这是在对铜缆布线进行验收测量时&#xff0c;我们经常能够听到的问题。针对这一情况&#xff0c;我们必须了解这一电气特性的基础知识&#xff0c;才能提供更专业的…

jenkins gitlab CI/CD

jenkins的安装教程就不说了&#xff1a;Jenkins docker 一键发布 (一)_jenkins 一键发布-CSDN博客 最近打算从svn切换到gitlab&#xff0c;所以配置了一下jenkins的git 很简单&#xff0c;直接上图 1 选择 Git 2 录入gitlab的http地址&#xff08;由于我的git地址不是22端口&…

【Spring】使用注解装配bean

目录 使用注解的两个必要步骤 正文 Cat Dog Animal beans.xml 测试 Qualifier 使用注解的两个必要步骤 1.导入约束 <?xml version"1.0" encoding"UTF-8"?> <beans xmlns"http://www.springframework.org/schema/beans"xmlns:…

3线SPI驱动 HX8347 TFT屏

老五家2.8寸屏&#xff0c;3线SPI驱动 前言 要知道屏幕的驱动芯片都小的惊人&#xff0c;想必是不会打上丝印的。从几百个引脚中判断哪个是哪个&#xff0c;想想就晕。 大佬们都太厉害了&#xff0c;看看PFC就知道屏幕的接线定义。一直好奇这种神技是怎么练成的。也尝试自己来…

ASUS华硕灵耀X2 Duo UX481FA(FL,FZ)_UX4000F工厂模式原装出厂Windows10系统

下载链接&#xff1a;https://pan.baidu.com/s/1sRHKBOyc3zu1v0qw4dSASA?pwd7nb0 提取码&#xff1a;7nb0 带有ASUS RECOVERY恢复功能、自带所有驱动、出厂主题壁纸、系统属性专属LOGO标志、Office办公软件、MyASUS华硕电脑管家等预装程序所需要工具&#xff1a;16G或以上…

按键精灵中的UI界面操作

1. 按键精灵中UI界面常用的控件 1. 文字框 界面1: {标签页1:{文字框:{名称:"文字框1",显示内容:"显示内容",文字大小:0,高度:0,宽度:0,注释:"文字大小、高度、宽度是可选属性&#xff0c;如需使用默认值&#xff0c;可保持值为0或直接删除此属性&qu…

技术分享 | App常见bug解析

功能Bug 内容显示错误 前端页面展示的内容有误。 这种错误的产生有两种可能 1、前端代码写的文案错误 2、接口返回值错误 功能错误 功能错误是在测试过程中最常见的类型之一&#xff0c;也就是产品的功能没有实现。比如图中的公众号登录不成功的问题。 界面展示错乱 产品…

网络溯源-PSEXEC-简单

题干&#xff1a; 我们的入侵检测系统&#xff08;IDS&#xff09;已发出警报&#xff0c;指示涉及使用PsExec的可疑横向移动活动。为了有效响应此事件&#xff0c;您作为 SOC 分析师的角色是分析存储在 PCAP 文件中的捕获网络流量。 攻击者首次攻击成功的计算机源网络IP地址…

【服务器】Java连接redis及使用Java操作redis、使用场景

一、Java连接redis-No-SQL 1、导入依赖 在你的项目里面导入redis的pom依赖 <dependency><groupId>redis.clients</groupId><artifactId>jedis</artifactId><version>2.9.0</version> </dependency> 2、连接redis 连接redis //…

AI:61-基于深度学习的草莓病害识别

🚀 本文选自专栏:AI领域专栏 从基础到实践,深入了解算法、案例和最新趋势。无论你是初学者还是经验丰富的数据科学家,通过案例和项目实践,掌握核心概念和实用技能。每篇案例都包含代码实例,详细讲解供大家学习。 📌📌📌在这个漫长的过程,中途遇到了不少问题,但是…