[超级详细系列]ubuntu22.04配置深度学习环境(显卡驱动+CUDA+cuDNN+Pytorch)--[1]安装显卡驱动

        [写在前面]  👇👇👇

        如果这篇博客写的还可以的话,希望各位好心的读者朋友们到最下面点击关注一下Franpper的公众号,或者也可以直接通过名字搜索:Franpper的知识铺。快要过年了,Franpper想制作一款红包封面,但是需要100个关注者,555。  

        下面开始今天的内容!

        Franpepr有一台旧电脑,是大学期间买的。最近把它刷成了Ubuntu系统,想配置一下深度学习环境。在这里记录同时和大家分享一下,希望对大家有所帮助。由于篇幅比较长,所以Franpper把整个安装过程分为了3篇博文,分别是显卡驱动的安装、Anaconda与CUDA的安装、cuDNN与Pytorch的安装。整个安装流程与在windows下安装相似,没有配置过的小伙伴可以先浏览一下Franpper之前分享过的两篇博文大致了解一下先。

                      深度学习环境配置(pytorch版本)----超级无敌详细版(有手就行)

           深度学习环境配置:CUDA、cuDNN 和 PyTorch 版本的选择与搭配指南(建议收藏)

        整个过程从头到为配置下来,Franpper感觉最麻烦的步骤为显卡驱动的安装、配置CUDA次之。本次ubuntu下配置的三篇博文为:

[超级详细系列]ubuntu22.04配置深度学习环境(显卡驱动+CUDA+cuDNN+Pytorch)--[1]安装显卡驱动 (本篇)

[超级详细系列]ubuntu22.04配置深度学习环境(显卡驱动+CUDA+cuDNN+Pytorch)--[2]安装Anaconda与CUDA

[超级详细系列]ubuntu22.04配置深度学习环境(显卡驱动+CUDA+cuDNN+Pytorch)--[3]安装cuDNN与Pytorch

        

        下面正式开始本次的介绍(假如朋友你的电脑里有显卡驱动则可以跳过本篇)

1. 查看是否缺少驱动

        首先输入下方的命令,假如也输出了和下图相同的结果,说明缺少显卡驱动,则需要安装显卡驱动。

nvidia-smi
查看是否有显卡驱动

2. 安装显卡驱动

         Franpper在网上查了几种安装驱动的方式,并且都试了一下,在线的两种方式都很简便,但是试了几次都失败了。离线安装虽然麻烦,但是一次就安装成功了。建议大家先试下在线安装,如果不行的话再尝试离线安装。

2.1 在线安装

2.1.1 软件和更新

        点击进入“软件和更新”

        然后进入附加驱动栏,选择一个推荐的驱动版本,然后点击应用更改。

2.1.2 命令行安装

 1) 添加驱动源

sudo add-apt-repository ppa:graphics-drivers/ppa

2) 更新软件源

sudo apt-get update

3) 安装系统推荐的显卡驱动:

 Franpper选择的是版本535

sudo apt-get install nvidia-driver-535

2.2 离线安装

1) 首先通过下面命令查看电脑的显卡型号

lspci | grep -i nvidia

可以看到本次配置所使用笔记本的显卡型号是1050 Ti。 

显卡型号

2) 根据上面查询到的显卡型号去官网下载显卡驱动程序

官方驱动 | NVIDIA下载适用于 GeForce、TITAN、NVIDIA RTX、数据中心、GRID 等 NVIDIA 产品的新驱动。icon-default.png?t=N7T8https://www.nvidia.cn/Download/index.aspx?lang=cn

         根据自己的配置选择对应的选项,然后点击确定

选择属性

         在弹出的新界面中选择同意并开始下载

        这里有一点需要注意一下,下载到的驱动文件应该保存在一个不含有中文的路径下,避免对以后的安装产生影响。 

3)   禁用Nouveau

        Nouveau是由第三方为NVIDIA显卡开发的一个开源3D驱动,为避免和官方显卡驱动冲突,所以最好禁用掉Nouveau。

        ·执行以下命令,如果什么都不输出表示Nouveau已经禁用,则可以直接跳过此步。

lsmod | grep nouveau
 执行命令,什么都不输出表示Nouveau已经禁用

        禁用前首先备份文件

sudo cp /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf.backup

        ·接下来打开配置文件,输入下面的指令回车后需要输入密码

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

         输入密码稍微等一小会儿后会弹出文本编辑器,将以下内容粘贴至文件末尾

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

 修改效果如下

 修改完毕后保存并关闭配置文件

 输入以下命令更新配置

sudo update-initramfs –u

输入以下命令重启电脑

sudo reboot

重启后通过lsmod | grep nouveau命令(上面给出过)测试是否成功禁用。

4)进入命令行界面

        安装驱动时要进入命令行界面(按下Ctrl+Alt+F1进入命令行界面,按下Ctrl+Alt+F7返回图形界面),进入命令行界面不好截图,所以Franpper以拍照的形式向大家展示。

        进入命令行界面后首先输入账号密码。

5)关闭图形界面

sudo service lightdm stop

正常情况是输出输出[sudo] franpper(用户名) 后输入密码即可,即如下图所示。

       如果报错,可能是因为还没安装lightdm,推出命令行界执行下方命令安装lightdm。

sudo apt-get install lightdm

6)进入驱动文件所在的路径中

 给驱动文件赋予执行权限,这里大家将驱动文件名称换成自己下载的

chmod  777 NVIDIA-Linux-x86_64-535.146.02.run

 这里Franpper由于粗心,将146写成了164,所以没有执行成功,到第三次才发现错误。

 开始安装,同样把驱动文件名替换为自己的。命令中几个参数的含义如下:

-no-x-check:安装驱动时关闭X服务
-no-nouveau-check:安装驱动时禁用nouveau
-no-opengl-files:只安装驱动文件,不安装OpenGL文件

sudo ./NVIDIA-Linux-x86_64-535.146.02.run -no-x-check -no-nouveau-check -no-opengl-files

        接下来会弹出以下几个选项。

        There appears to already be a driver installed on your system (version: 535.146.02).  As part of installing this driver (version: 535.146.02), the existing driver will be uninstalled.  Are you sure you want to continue?    ->   [Continue Installation]

        由于Franpper之前安过一次驱动,所以它提示我是否要卸载现有版本。如果你之前没有安装过,应该不会i弹出这个选项。这里Franpper选择Continue Installation。

a9f962b07a474b109572da11c45135aa.jpg

         Install NVIDIA's 32-bit compatibility libraries?    ->   [No]

7db4e12199874f4cae14053def8f6322.jpg

 Would you like to register the kernel module sources with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later.    ->  [No]

5c24b3803a4e472b88a55a089000e7c6.jpg

        Installation of the NVIDIA Accelerated Graphics Driver for Linux-x86_64 (version535.146.02) is now complete.     ->   [ok]

c9cabab4de6e4a0480f7b84446b0d43f.jpg

 到此位置整个安装过程已经完成了。现在退出命令行界面测试一下 👇

大功告成,打完收工!

(关注下公众号哦👇)

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

腾讯云代金券如何领取?详细领取教程来了!

随着云计算的快速发展,越来越多的用户意识到云服务的重要性。腾讯云作为国内领先的云服务提供商,为广大用户提供了丰富的云计算解决方案。为了吸引用户上云,腾讯云推出了代金券活动,让用户在购买云服务时可以享受到更多的优惠。 那…

【Linux】Linux基本操作(二):rm rmdir man cp mv cat echo

承接上文: 【【Linux】Linux基本操作(一):初识操作系统、ls、cd、touch、mkdir、pwd 】 目录 1.rmdir指令 && rm 指令: rmdir -p #当子目录被删除后如果父目录也变成空目录的话,就连带父目录一…

线性表的案例引入 | 稀疏多项式的运算

#include <iostream> using namespace std;#define TRUE 1 #define FALSE 0 #define OK 1 #define ERROR 0 #define INFEASIBLE -1 #define OVERFLOW -2typedef int Status;// 定义单链表 typedef struct PNode {float coef; //系数int expn; //指数struct PNode *nex…

「优选算法刷题」:查找总价格为目标值的两个商品

一、题目 购物车内的商品价格按照升序记录于数组 price。请在购物车中找到两个商品的价格总和刚好是 target。若存在多种情况&#xff0c;返回任一结果即可。 示例 1&#xff1a; 输入&#xff1a;price [3, 9, 12, 15], target 18 输出&#xff1a;[3,15] 或者 [15,3]示例…

windows下载安装ImageMagick

windows环境搭建专栏&#x1f517;点击跳转 win系统环境搭建&#xff08;十七&#xff09;——windows下载安装ImageMagick 文章目录 win系统环境搭建&#xff08;十七&#xff09;——windows下载安装ImageMagick1.下载2.安装3.验证3.1 依赖缺失问题3.2 依赖缺失解决 1.下载 …

二叉树 - 堆 | 数据结构中的小技巧大作用

&#x1f4f7; 江池俊&#xff1a; 个人主页 &#x1f525;个人专栏&#xff1a; ✅数据结构冒险记 ✅C语言进阶之路 &#x1f305; 有航道的人&#xff0c;再渺小也不会迷途。 文章目录 一、堆的概念及介绍二、结构图示三、堆的代码实现&#xff08;图解&#xff09;3.1 创…

6种解决msvcp140.dll文件丢失的有效方法讲解

msvcp140.dll是一个动态链接库文件&#xff0c;它是Microsoft Visual C 2015 Redistributable的一部分。这个文件通常位于Windows操作系统的System32文件夹中&#xff0c;它包含了许多用于支持C编程语言的函数和类。当您在运行一个需要使用这些函数和类的应用程序时&#xff0c…

cpp_12_异常处理

1 异常理论 1.1 何为异常&#xff1f; 在实际运行环境中发生&#xff0c;却在设计、编码、测试阶段无法预料的&#xff0c;各种潜在的问题。 1.2 报告异常的2种机制 1&#xff09;通过 return 返回值报告异常信息&#xff1a; 所有局部对象都能正确地被析构、被释放 定位错…

代码随想录算法训练营第四天 | 24.两两交换链表中的节点 19.删除链表的倒数第N个节点 160.链表相交 142.环形链表II

两两交换链表中的节点 两两交换节点&#xff0c;思路如下&#xff1a; 这样三步操作就实现了2和1两个节点的交换&#xff0c;循环操作&#xff0c;每一次循环移动到交换好的最后一个节点。循环的截止条件就是没有节点剩余了&#xff0c;或者只剩一个节点。翻转链表的精髓还是在…

机器学习实验报告- KNN算法

目录 一、算法介绍 1.1算法背景 1.2基本假设 1.3算法原理阐述 1.4算法关键点 二、数据集描述 2.1数据集介绍 2.2 数据处理 三、算法实现 3.1代码实现&#xff08;python&#xff09; 3.2代码复现结果 四、实验讨论 4.1关于KNN算法优缺点的讨论 4.2关于k值对实验结…

HTML JavaScript 数字变化特效

效果 案例一&#xff1a;上下滚动 案例二&#xff1a;本身变化 代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><met…

【Python代码】以线性模型为例,详解深度学习算法流程,包括数据生成、定义模型、损失函数、优化算法和训练

**使用带有噪声的线性模型构造数据集&#xff0c;并根据有限的数据恢复该线性模型的参数。**其中包括数据集构造、模型参数初始化、损失函数定义、定义优化算法和训练等过程。是大多数算法实现过程的一个缩影&#xff0c;理解此过程有助于在开发或改进算法时更深刻了解其算法的…

【Oracle】收集Oracle数据库内存相关的信息

文章目录 【Oracle】收集Oracle数据库内存相关的信息收集Oracle数据库内存命令例各命令的解释输出结果例参考 【声明】文章仅供学习交流&#xff0c;观点代表个人&#xff0c;与任何公司无关。 编辑|SQL和数据库技术(ID:SQLplusDB) 【Oracle】收集Oracle数据库内存相关的信息 …

受电端协议芯片是如何让Type-C接口设备实现快充?

随着科技的不断进步&#xff0c;USB Type-C接口在电子产品中越来越普及。而在这个接口中&#xff0c;Type-c受电端协议芯片起着至关重要的作用。那么&#xff0c;什么是Type-c受电端协议芯片&#xff1f;它又是如何工作的呢&#xff1f;本文将为您揭开Type-c受电端协议芯片的神…

pip安装之后还是无法使用问题处理

最近由于需要使用到Python 相关功能&#xff0c; 记录下一些入门小技巧 1 python 下载安装 在window10 环境下载免安装版本&#xff0c; 并解压 安装包下载地址&#xff1a; https://www.python.org/ftp/python/3.12.1/python-3.12.1-embed-amd64.zip 2. 安装pip, 由于是内嵌…

QQ数据包解密

Windows版qq数据包格式&#xff1a; android版qq数据包格式&#xff1a; 密钥&#xff1a;16个0 算法&#xff1a;tea_crypt算法 pc版qq 0825数据包解密源码&#xff1a; #include "qq.h" #include "qqcrypt.h" #include <WinSock2.h> #include…

【php】php去除excel导入时的空格

背景 PHPExcel_1.8.0导入excel&#xff0c;遇到trim无法处理的空格。 解决方案 $excelVal preg_replace(“/(\s| | |\xc2\xa0)/”, ‘’, $excelVal); 完整代码 thinkphp5代码 function readExcel($file) {require_once EXTEND_PATH . PHPExcel_1.8.0/Classes/PHPExcel.p…

汽车制动器行业调查:市场将继续呈现稳中向好发展态势

汽车制动器是汽车的制动装置&#xff0c;汽车所用的制动器几乎都是摩擦式的&#xff0c;可分为鼓式和盘式两大类。鼓式制动器摩擦副中的旋转元件为制动鼓&#xff0c;其工作表面为圆柱面;盘式制动器的旋转元件则为旋转的制动盘&#xff0c;以端面为工作表面。 目前市场上主流的…

WebSocket-黑马好客租房

文章目录 网站中的消息功能如何实现&#xff1f;什么是WebSocket&#xff1f;http与websocket的区别httpwebsocket 浏览器支持情况快速入门创建itcast-websocket工程websocket的相关注解说明实现websocket服务测试编写js客户端 SpringBoot整合WebSocket导入依赖编写WebSocketHa…

全网最高质量文章:重新学习Java中的HashMap!!

前言 本文参考了美团技术团队的科普文章Java 8系列之重新认识HashMap - 知乎 (zhihu.com) 这篇文章的质量极其高&#xff0c;高到很有可能是全网介绍HashMap这个知识点最优秀的文章&#xff0c;没有之一&#xff01;&#xff01;&#xff01;因此&#xff0c;我决定在我自己的…
最新文章