Ubuntu安装NVIDIA显卡驱动

目录

  • 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.hqwc.cn/news/102518.html

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

相关文章

sklearn中make_blobs方法:聚类数据生成器

sklearn中make_blobs()方法参数: n_samples:表示数据样本点个数,默认值100 n_features:是每个样本的特征(或属性)数,也表示数据的维度,默认值是2。默认为 2 维数据,测试选取 2 维数据也方便进行可视化展示…

XREAL Air 2 Pro发布,加入电致变色技术,拓展AR眼镜使用场景

【2023年9月6日 中国北京】继刚刚宣布XREAL Air在全球销量突破20万台后,全球领先的消费级AR眼镜品牌XREAL今日于中国市场正式推出XREAL Air 2系列新品。全新Air 2系列包含两款AR眼镜产品:在显示、佩戴舒适性、音频等核心维度全面升级,体验全面…

2023国赛数学建模B题思路分析 - 多波束测线问题

# 1 赛题 B 题 多波束测线问题 单波束测深是利用声波在水中的传播特性来测量水体深度的技术。声波在均匀介质中作匀 速直线传播, 在不同界面上产生反射, 利用这一原理,从测量船换能器垂直向海底发射声波信 号,并记录从声波发射到…

解决使用torchstat时报错“AttributeError: module ‘numpy‘ has no attribute ‘long‘”等问题

背景 首先直接使用pip install torchstat安装。 使用torchstat查看模型参数和flops: from torchstat import stat stat(model.to(cpu), (2, 32, 32)) # 这里第二个参数取决于自己的模型输入大小报错1 运行报错如下: 核心错误为: “Attri…

Sumo中Traci.trafficlight详解(上)

Sumo中Traci.trafficlight详解(上) 记录慢慢学习traci的每一天,希望也能帮到你 文章目录 Sumo中Traci.trafficlight详解(上)Traci.trafficlight信号灯参数讲解1.getAllProgramLogics(self,tlsID)2.getBlockingVehicle…

汽车技术发展趋势及我国节能与新能源汽车技术

一、世界汽车技术发展趋势 汽车技术正向着低碳化、信息化、智能化方向发展;“三化”趋势成为世界主要汽车强国、主要车企共同的战略选择。 主要汽车战略及方向 在“三化”趋势下,各汽车强国在汽车节能技术、新能源汽车技术、智能网联汽车技术等方面持续…

简易实现QT中的virtualkeyboard及问题总结

文章目录 前言:一、虚拟键盘的实现综合代码 二、为什么选用QWidget而不适用QDialog实现键盘三、从窗体a拉起窗体b后,窗体b闪退问题的探讨四、关闭主窗口时子窗口未关闭的问题 前言: 本文章主要包含四部分: 虚拟键盘的实现&#…

C#学习系列之UDP同端口收发问题

C#学习系列之UDP同端口收发问题 前言解决办法关于JoinMulticastGroup总结 前言 想测试自己的程序问题,建立了两个UDP程序,一个往端口中接到数就传出去,另一个从这个端口接数据来解析。 出现的问题是 每次打开端口,另一个程序就无…

同旺科技USB to I2C 适配器烧写 Arduino 模块

所需设备: 内附链接 1、同旺科技USB to I2C 适配器 2、Arduino 模块 硬件连接: 用同旺科技USB to I2C 适配器连接芯片的TX、RX、GND; 打开Arduino IDE编辑工具, 点击“上传”按钮,完成程序的编译和烧录;

ArrayList、LinkedList、Collections.singletonList、Arrays.asList与ImmutableList.of

文章目录 ListArrayListLinkedListArrayList与LinkedList的区别快速构建list集合Collections.singletonListArrays.asListImmutableList.of Java集合类型有三种:set(集)、list(列表)和map(映射),而List集合是很常用的一种集合类型, List 我…

【juc】ReentrantReadWriteLock之缓存(仅当学习)

目录 一、说明二、代码示例2.1 pom依赖2.2 示例代码2.3 实体类 三、示例截图 一、说明 1.针对于读多写少的情况 2.先查缓存&#xff0c;没有再去查库 二、代码示例 2.1 pom依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"h…

宝塔面板定时监控和重启MySQL数据库(计划任务)

往期教程 如果还有不了解宝塔面板怎么使用的小伙伴&#xff0c;可以看下我总结的系列教程&#xff0c;保证从新手变老鸟&#xff1a; 【建站流程科普】 个人和企业搭建网站基本流程及六个主要步骤常见的VPS主机运维面板汇总—网站运维面板云服务器&#xff0c;VPS&#xff0…