Ubuntu安装NVIDIA显卡驱动

news2024/12/26 21:13:36

目录

  • 0. 引言
  • 1. 方法1 - 使用系统自带渠道安装
  • 2. 方法2 - 手动安装
    • 2.1. 卸载原有显卡驱动
    • 2.2. 安装显卡驱动
    • 2.3. 补救措施

0. 引言

\qquad 第一次入坑的建议看一下这部分。如果说要问我什么时候应该给Ubuntu装显卡驱动,我建议新系统用户第一件事就是安装显卡驱动,因为显卡驱动一旦失败,那基本上可视化界面就不能用,这个时候再刷机,还稍微方便一些。

首先介绍几个命令

  • ubuntu-drivers devices 查看显卡硬件支持的驱动类型(在使用前需要sudo apt update更新源)
  • nvidia-smi 查看当前显卡驱动(若没有会返回错误,该命令应为显卡驱动自动安装,切勿按照提示手动安装)
  • nvcc -V 查看系统安装的cuda驱动(注意这是系统当前使用的cuda驱动,也可以同时存在多个cuda,使用conda+pytorch可以在多个虚拟环境中管理不同的cuda版本)

例如如下的一组图片:
ubuntu-drivers devices
本机可用的显卡驱动有535,525和470(只是检测到的部分,不代表其他的驱动一定不可用)
nvidia-smi
显卡驱动为525.126.06,cuda最高支持版本为12.0
nvcc-V
本机cuda版本为11.1

1. 方法1 - 使用系统自带渠道安装

\qquad 以我多次失败经验看,新手一定要使用此方法安装。首先进入Ubuntu搜索栏目,找到附加驱动(或者Additional drivers)的一个图标。由于截图的时候侧边栏目自动隐藏就不截图标了,点开之后是这样的。
在这里插入图片描述
\qquad 一般博主会告诉你使用第一个带tested驱动然后点应用更改即可。但我多次尝试发现,选择不带server的nvidia-driver-xxx类型的驱动会更加保险一些,剩下的操作只需要等待应用更改完成,关闭该窗口,重启Ubuntu即可。若重启之后nvidia-smi是正常的,那么恭喜你就已经大功告成了。

2. 方法2 - 手动安装

\qquad 新手请不要采取这个步骤,如果是迫不得已,请确保系统重要资料得已备份,否则后果自负。另外本步骤失败,但是可以重启电脑的用户,请谨慎再操作方法1,除非你确认所有的设置都已得到了还原,不然也有可能会失败。

本部分参考博客:Ubuntu18-22.04安装和干净卸载nvidia显卡驱动——超详细、最简单

2.1. 卸载原有显卡驱动

确保你的电脑里有显卡

lspci | grep -i nvidia

更新软件源列表

sudo apt-get update

卸载原有驱动

sudo apt-get remove --purge nvidia*  

注意此步骤不成功说明原来没有显卡驱动,无须担心。

2.2. 安装显卡驱动

apt-cache search nvidia-driver

如果你已经确定要安装的显卡型号,请加上grep

apt-cache search nvidia-driver | grep -i 525

在这里插入图片描述
当然,也可以在nvidia官网查看推荐驱动:官网链接,但是本文不介绍从官网安装驱动的教程,想学习的朋友请移步到我的参考博客。


确认好你需要安装的库之后,首先禁用Ubuntu自带的显卡驱动nouveau(或xorg)。

sudo gedit /etc/modprobe.d/blacklist.conf

最后两行就加上

blacklist nouveau
options nouveau modeset=0

有的Ubuntu系统使用sudo gedit会失败,可以改用sudo vi命令修改文件,用之前请参考此博客熟悉一下vi/vim的命令规则。
接下来更新该设置:

sudo update-initramfs –u

接下来安装lightdm:

sudo apt-get install lightdm

安装完可能出现lightdm设定界面,选择lightdm即可。参考博客中认为这一步可有可无,本人建议加上,因为我不加的时候系统就是一直黑屏。

选择你需要的nvidia驱动安装,在此以525为例

sudo apt-get install nvidia-driver-525

确定在重启电脑前做好了你的数据备份!重启电脑!

reboot

如果你的电脑成功进入了登录界面,就可以正常login查看了,仍然是采用引言的nvidia-smi命令进行验证,如果有则恭喜你的驱动安装成功了。

如果没有,非常遗憾:(,你遇到了大多数手动安装显卡驱动者遇到的问题,请查看补救措施,但是补救措施有不一定是完整的,欢迎大家在评论区补充。

2.3. 补救措施

  1. 重启电脑时,在grub界面选择ubuntu advanced options(一般为第二项),如何在跳出的界面中选择第二项启动(一般最新的Ubuntu内核+recovery mode)。不熟悉Ubuntu recovery mode的朋友可以参考这篇博客。
  2. 这个时候会弹出一个列表,选择root,按回车输入命令。首先检查显卡驱动是否完好
nvidia-smi

如果返回正常,那么可以尝试

sudo mv /etc/X11/xorg.conf /etc/X11/xorg-backup.conf

即删除并备份了xorg.conf,然后Ctrl+D退出root,在列表中选择resume正常启动Ubuntu,查看是否能正常开机。如果成功,则后面就不用看了;否则,请查看步骤3

  1. 如果步骤2返回结果失败,则删除显卡驱动
sudo apt-get remove --purge nvidia*

修改blacklist.conf文件

sudo vi /etc/modprobe.d/blacklist.conf

删掉之前加的两行,用之前请参考此博客熟悉一下vi/vim的命令规则。

blacklist nouveau
options nouveau modeset=0

重启

reboot

再在grub中选择正常Ubuntu启动(一般为第一项),查看是否能正常登录,如若可以,则恭喜你正常恢复了系统。还没有备份赶快进行备份,然后按照方法1安装,或按照方法2尝试其他的驱动。

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

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

相关文章

C语言练习题解析:挑战与突破,开启编程新篇章!(3)

💓博客主页:江池俊的博客⏩收录专栏:C语言刷题专栏👉专栏推荐:✅C语言初阶之路 ✅C语言进阶之路💻代码仓库:江池俊的代码仓库🎉欢迎大家点赞👍评论📝收藏⭐ 文…

如何加密Python程序

我们开发了一个项目,历尽艰辛,想发布出去,又怕别人窃取自己的劳动成果。 有效的方法一是可以上传github,分享源代码,其它想使用的朋友可以通过fork来进一步改进它。 对了,最近刚发现一个小技巧&#xff0…

如何使用 MSYS2 编译最新版的 coreutils 源码(目前最新版本为 coreutils-9.4)

文章目录 一、coreutils 源码下载二、MSYS2 安装编译工具1. pacman -Suy 更新软件仓库2. pacman -S msys/gcc 安装gcc3. pacman -S msys/make 安装make工具4. 解压缩 coreutils 压缩包5. 执行 ./configure 命令6. 执行 make 进行编译(cygwin-3.4.8版本的一个bug导致…

1.1 空间直角坐标系

1.空间直角坐标系的建立 三维空间中几何 空间图形形式 ----- 点 线 面 体 ↑ ↓ \uparrow\downarrow ↑↓ (空间直角坐标系作为桥梁帮助我们理解) 代数理论表达 — 坐标,方程(组) 2. 空间直角坐标系的定义 定义: 过…

Jmeter进阶使用指南-分布式测试

当你需要模拟大量并发用户并测试应用程序的性能时,JMeter的分布式测试功能非常有用。分布式测试允许你使用多个JMeter实例来模拟并发用户,从而提供更高的负载。 下面是一个详细的介绍和讲解分布式测试的步骤: 准备主机和从机: 首…

【代码随想录】Day 51 动态规划12 //待做//(买卖股票冷冻期、买卖股票手续费)

买卖股票冷冻期 https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-with-cooldown/ 买卖股票手续费 https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-with-transaction-fee/

【多思路附源码】2023高教社杯 国赛数学建模C题思路 - 蔬菜类商品的自动定价与补货决策

赛题介绍 在生鲜商超中,一般蔬菜类商品的保鲜期都比较短,且品相随销售时间的增加而变差, 大部分品种如当日未售出,隔日就无法再售。因此, 商超通常会根据各商品的历史销售和需 求情况每天进行补货。 由于商超销售的蔬…

LLM - Model、Data、Training、Generate Agruments 超参解析

目录 一.引言 二.常用参数 ◆ ModelArguments ◆ DataArguments ◆ TrainingArguments ◆ GeneratingArguments 三.代码实现 ◆ Python 代码 ◆ Shell 代码 四.总结 一.引言 LLM 相关训练框架都会引入 ModelArguments、DataArguments、TrainingArguments、Generatin…

MySQL 学习笔记

😀😀😀创作不易,各位看官点赞收藏. 文章目录 MySQL 学习笔记1、DQL 查询语句1.1、基本查询1.2、函数查询1.2.1、单行函数1.2.2、聚合函数 1.3、复杂查询1.3.1、连接查询1.3.2、子查询 1.4、SQL 语句 执行顺序 2、DDL 定义语句2.1、…

F. Selling a Menagerie Codeforces Round 895 (Div. 3)

Problem - F - Codeforces 题目大意:有n个动物,每个动物i有一个害怕的动物a[i],现要卖掉所有动物,每个动物都有价值c[i],如果i在a[i]之前卖掉,就会获得2*c[i]的价值,如果在a[i]之后被卖掉就会获…

垃圾回收 - 分代垃圾回收

分代垃圾回收在对象中导入了“年龄”的概念,通过优先回收容易成为垃圾的对象,提高垃圾回收的效率。 1、新生代对象和老年代对象 分代垃圾回收中把对象分类成几代,针对不同的代使用不同的 GC 算法,我们把刚生成的对象称为新生代对…

UI自动化测试详解

前言 随着智能化信息基础设施的推进,软件开发的进程也不断加快。软件测试工作也逐渐由传统的手工测试向软件自动化测试跨越。 对于很多企业来说,做好软件自动化测试工作已经不仅仅是通过测试工具进行“点点点”,要想找出软件测试过程中的缺…

python 小案例72

import requestsdef fetch_data_from_api(url):response requests.get(url)if response.status_code 200:data response.json()return dataelse:print("Failed to fetch data from API")return None# 使用NASA的API获取每日天文图片 url "https://api.nasa.…

【Springcloud】Actuator服务监控

【Springcloud】Actuator服务监控 【一】基本介绍【二】如何使用【三】端点分类【四】整合Admin-Ui【五】客户端配置【六】集成Nacos【七】登录认证【八】实时日志【九】动态日志【十】自定义通知 【一】基本介绍 (1)什么是服务监控 监视当前系统应用状…

情侣头像微信小程序源码 朋友圈背景小程序源码 动态壁纸微信小程序源码

壁纸和情侣头像,朋友圈素材都可以做,带视频教程。 搭建也不难,纯前端无后台。直接开发者工具调试前端,绑定合法域名,流量主功能也是在前端替换。 无需服务器域名直接上手!!!

飞行动力学 - 第17节-part3-垂尾和推进系统对航向的影响 之 基础点摘要

飞行动力学 - 第17节-part3-垂尾和推进系统对航向的影响 之 基础点摘要 1. 尾翼的贡献2. 垂尾是航向静稳定性的最大来源3. 推进系统对航向的贡献3.1 螺旋桨3.2 喷气式 4. 参考资料 1. 尾翼的贡献 平尾对航向静稳定性的影响机理与机翼相同,由于尺寸小,通…

AI教程 | 用Midjourney制作AI模特和换装的保姆级教程

Hi! 大家好,我是专注于AI项目实战的赤辰。 昨天电商朋友过来交流,聊到他最近新开了一家淘宝店,在没有请任何员工的情况下,他一个人用AI工具完成了店铺取名,商品文案,店铺logo,主图设计&#xf…

ASO优化之阅读并回复应用的评论

回复评论对于与用户保持牢固的关系非常重要。如果时间有限,优先回复负面评论,可以向其他用户保证,我们正在积极解决应用的问题,从而提高转化率。 1、逻辑与沟通要清晰。 首先,无论他们的反馈是正面还是负面&#xff0…

【c++】如何有效地利用命名空间?

​ 🌱博客主页:青竹雾色间 😘博客制作不易欢迎各位👍点赞⭐收藏➕关注 ​✨人生如寄,多忧何为 ✨ 目录 前言什么是命名空间?命名空间的语法命名空间的使用避免命名冲突命名空间的嵌套总结 前言 当谈到C编…

51单片机-直流电机学习

简介 51单片机采用的是5V的直流电机 轴长:8mm 轴径:2mm 电压:1-6V 参考电流:0.35-0.4A 3V 转速:17000-18000 转每分钟 他的组成: 直流电机的结构应由 定子 和 转子 两大部分组成。 直流电机运行时静止…