ServidoresLinux

ServidoresLinux.com
Linux服务器网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

nvidia一下我电脑系统安装配置教程(二).04.2.0

2023年1月20日 328点热度

现有一个服务器,打算用于深度学习,于是只安装ubuntu系统即可。先列一下我电脑的配置信息:

类型版本/大小

显卡

nvidia 3080Ti

内存

32G

SSD

512G

固态硬盘

4T

我这里安装的是ubuntu20.04.2.0,下面是系统的安装配置教程。

1 系统安装

系统安装首先需要准备一个U盘,将ubuntu系统下载解压进去,然后进入电脑的BIOS界面设置security boot并设置从该U盘启动。详细教程百度即可。设置好之后重启电脑,会进入系统安装界面。在选择安装类型的时候,选择其他选项,可以自己定义磁盘的分配方式(而实际上也必须这么做,因为如果选择清除整个磁盘并安装的话,那系统只能安装在一个硬盘上ubuntu安装分区方案,但是我们有双硬盘)。在安装类型界面,如果该服务器之前已经使用过了,比如它原本已经安装了windows系统或者是安装了双系统了,那么磁盘会显示一些使用的情况,我们这里需要清空所有内容然后只装ubuntu系统,所以直接把所有非空闲状态的磁盘都删除掉就行,这样磁盘就都变成空闲了。如下图所示,其中名为nvme0n1的磁盘是固态硬盘linux 版本,大小为512G,名为sda的磁盘为机械硬盘,大小为4T。这里,我们只需要给ubuntu系统分四个区就行,分区方案如下表所示:

分区大小挂载点类型硬盘位置

efi系统分区

500M

无

主分区

SSD

空间起始位置

swap分区

与电脑内存一样大(比如我这里32G)

交换空间

逻辑分区

SSD

空间起始位置

Ext4分区

SSD剩余所有空间

/

主分区

SSD

空间起始位置

Ext4分区

机械硬盘所有空间

/home

主分区

机械硬盘

空间起始位置

其中efi系统分区是启动引导相关的,swap分区是交换分区,一般设置为与电脑内存一样大就行,/是系统根目录,将SSD的剩余所有空间都给它,/home用于存放用户数据等,整个机械硬盘都分给它(当然,我这里留了200G空闲内存ubuntu安装分区方案,算是以备不时之需吧,毕竟总共有4T的机械硬盘,不差那200G)。分区后的情况如下图:

在这里插入图片描述

确认分区方案后,进行安装即可。

2 基本设置

ubuntu安装分区方案_500g ubuntu分区方案_双系统ubuntu安装分区方案

下面介绍一些安装完系统后的初始化配置方法。

2.1 设置root用户密码

在安装好系统后,如果直接打开一个终端执行su的话,会得到报错su: 认证失败。因为root用户默认是锁定状态,不允许登录,因此需要进行配置。终端执行:

sudo passwd root

会先要求你输入用户密码,然后会要你输入新的密码以及确认,这里新的密码就是root的密码,可以设置的和用户密码不一样,也可以一样。设置后,再次执行:

su

输入刚刚设置的root密码后,就可以进入root了。

2.2 更新系统软件

依次执行如下两行代码即可:

sudo apt update

sudo apt upgrade

2.3 禁止内核更新(非常重要!)

这是必要的一步linux重启命令,不然后边很容易出现驱动版本错误等各种问题,导致系统崩溃。执行:

dpkg --get-selections |grep linux

可以查看电脑已安装的内核版本,比如我这里的输出如下:

在这里插入图片描述

然后再执行:

uname -a

可以查看当前正在使用的内核版本。比如我这里的输出是:

表明我在用的是5.11.0-41-generic这个版本,那么,禁止内核自动更新需要执行sudo apt-mark hold命令。一般只禁止和上述输出版本一致的image和headers即可,如果想保守起见,也可以将所有与该版本一致的内容都禁止掉。比如我这里禁止的有:

sudo apt-mark hold linux-image-5.11.0-41-generic
sudo apt-mark hold linux-headers-5.11.0-41-generic
sudo apt-mark hold linux-modules-5.11.0-41-generic
sudo apt-mark hold linux-modules-extra-5.11.0-41-generic

禁止后,可以再次执行dpkg --get-selections |grep linux查看版本情况,输出如下:

在这里插入图片描述

可以看到被禁止的四项变成了hold状态。

3 显卡驱动配置 3.1 安装nvidia驱动

删除旧驱动:

sudo apt-get purge nvidia*

禁止自带的nouveau nvidia驱动:

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

500g ubuntu分区方案_双系统ubuntu安装分区方案_ubuntu安装分区方案

在打开的空白文件内,填入如下两行内容,然后保存关闭。

blacklist nouveau
options nouveau modeset=0

更新配置文件:

sudo update-initramfs -u

接下来执行如下命令,重启系统:

sudo reboot

重启之后,因为禁止了显卡的驱动,所以重启后显示的效果不是很好,通过这个可以看出,是否完成这一步操作。(在我这里表现很明显的就是,我本来是双屏的,但是重启后就只剩一个屏了)

添加Graphic Drivers PPA:

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

更新:

sudo apt-get update

查看合适的驱动版本:

ubuntu-drivers devices

输出如下:

在这里插入图片描述

从输出可以看出,推荐安装的版本为nvidia-driver-470,于是,执行如下命令进行安装(我直接根据推荐版本进行了安装,当然,如果你想要更高的495或者更低的460版本,都是可以的):

sudo apt-get install nvidia-driver-470

安装完成后,重启系统:

sudo reboot

(嗯,上面不是说我卸掉默认驱动后,重启双屏变单屏了吗。然后这回重启后,双屏它又自动回来了)

执行如下命令,可以判断是否成功安装驱动:

sudo nvidia-smi

如果输出类似如下,则表明显卡驱动安装成功:

在这里插入图片描述

此外,也可以使用如下命令:

sudo nvidia-settings

如果执行之后,有弹出一个NVIDIA X Server Settings窗口,则表明安装成功。

3.2 安装cuda

500g ubuntu分区方案_ubuntu安装分区方案_双系统ubuntu安装分区方案

cuda的安装主要包括cuda toolkit的安装以及cudnn的配置两步。

3.2.1 安装cuda toolkit

首先从官网下载自己需要的cuda版本,下载链接。我这里选择cuda11.0(下面涉及到版本号的记得替换成自己的版本),配置选项如下所示:

在这里插入图片描述

选好之后,会自动给出安装的命令,如下图所示:

在需要存放下载的run文件的位置,打开一个终端,执行第一行命令:

wget http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run

在下载的过程中,可以先安装一下依赖库(不安装的话安装cuda的过程会报错),执行如下命令:

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

然后,执行安装命令:

sudo sh cuda_11.0.2_450.51.05_linux.run

下面是安装的选项:

Existing package manager installation of the driver found. It is strongly    │
│ recommended that you remove this before continuing.
# 选continue
Do you accept the above EULA? (accept/decline/quit):
#accept

接下来会选择是否安装驱动等,这一步比较重要。驱动的话我们在前面已经安装好了,这里需要把它的选项给去掉。界面操作的方式在底部有说明,设置好的选项如下图所示,然后选择install。

在这里插入图片描述

安装过程还比较快,完成后的输出如下图所示:

在这里插入图片描述

为了确认是否安装成功,可以依次执行如下命令:

cd /usr/local

ls

如果输出中有cuda-11.0的话,那么再进入该目录下:

cd cuda-11.0

ls

如果输出如下,则表明安装成功了:

需要这么确认的原因是,我之前安装cuda的时候,虽然有出现了cuda-xxx文件夹,但是该目录下却缺少include或者lib64文件夹这样。这种情况就是没安装完整,需要卸载掉重新进行安装(可以参考这里)。

3.2.2 配置cudnn

500g ubuntu分区方案_ubuntu安装分区方案_双系统ubuntu安装分区方案

安装好cuda后,需要下载cudnn对相应文件进行替换。cudnn的下载链接。我这里选择用于cuda11.0的8.0.5版本,选择第一个选项cuDNN Library for Linux (x86_64)即可,如下图所示:

在这里插入图片描述

下载cudnn需要登陆nvidia的账号,没有的话就用邮箱去注册一个,免费。下载完成后,解压,然后进入解压后的目录下,打开一个终端,依次执行如下命令:

sudo cp cuda/include/cudnn.h /usr/local/cuda-11.0/include

sudo cp cuda/lib64/libcudnn* /usr/local/cuda-11.0/lib64

sudo chmod a+r /usr/local/cuda-11.0/include/cudnn.h /usr/local/cuda-11.0/lib64/libcudnn*

配置好后即可。

3.3 设置环境变量

这里的配置和其他教程有所不同,我是直接不带版本号添加cuda的,这样便于后续进行多版本的cuda安装和管理,多版本cuda安装管理教程可参考这里。在任一终端中,执行:

sudo gedit ~/.bashrc

在打开文件的末尾,添加如下两行代码:

export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

保存关闭,然后在终端执行:

source ~/.bashrc

使修改立即生效。接下来,给cuda创建软链接:

sudo ln -s /usr/local/cuda-11.0 /usr/local/cuda

然后输入如下命令进行验证:

nvcc --version

我这里的输出如下:

环境配置成功!

当然,前面我们默认选择安装了cuda的示例,这里可以通过运行示例来判断是否成功安装。执行如下命令:

cd /usr/local/cuda-11.0/samples/1_Utilities/deviceQuery

执行make命令:

sudo make

然后:

./deviceQuery

如果有输出GPU信息,则表明安装成功!

4 安装Anaconda

500g ubuntu分区方案_ubuntu安装分区方案_双系统ubuntu安装分区方案

Anaconda是一个使用非常广泛的深度学习虚拟环境管理软件,它可以用于隔离多个环境,操作简便。使用Anaconda管理多个虚拟环境的教程可以参考这里。个人版Anaconda3可以从官网直接下载(历史版本在这里),我这里下载的是当下最新的版本Anaconda3-2021.11-Linux-x86_64.sh。下载完成后,执行如下命令进行安装:

bash Anaconda3-2021.11-Linux-x86_64.sh

遇到的所有中断都直接yes即可。安装完成后,会输出如下信息:

关闭该终端再重新打开一个,可以发现用户名前面多了一个(base)字样,表明当前环境已经在Anaconda的虚拟环境base里面了。关于如何使用conda创建并管理多个虚拟环境,可以参考这里。

5 其他一些工具的安装

下面是一些常用开发工具的安装教程,可以按需进行选择。

5.1 vscode

vscode是一个使用非常广泛的轻量级跨平台编程IDE。虽然vscode可以简单地使用命令行进行安装。但是,这样安装好的vscode是不能输入中文的,所以需要手动从官网下载vscode的deb安装包来安装。我这里下载的文件名为code_1.62.3-1637137107_amd64.deb,然后,在该目录下打开一个终端,执行如下命令进行安装:

sudo dpkg -i code_1.62.3-1637137107_amd64.deb

安装过程很快。完成后即可在全部应用里面看到vscode的应用图标了。

打开vscode,进入extension,可以安装一些自己需要的扩展,这些扩展可以方便我们的开发过程,如下图所示:

在这里插入图片描述

因为我的主要开发语言为python和C++,所以我这里首先把python和c++的扩展给安装了。然后还安装了Bracket Pair Colorizer(让括号拥有独立的颜色,易于区分)、Better Comments(使注释有人性化的高亮显示)。更多扩展推荐可以参考这里。

5.2 向日葵

向日葵是一个常用的免费远程控制软件,可以点击这里下载。我这里下载的文件名为sunloginclient-11.0.0.36662-amd64.deb。与vscode的安装一样,在该目录下打开一个终端,执行如下命令:

sudo dpkg -i sunloginclient-11.0.0.36662-amd64.deb

安装完成后即可在全部应用中看到向日葵的应用图标,登陆账号即可使用。但是,在使用另一台电脑远程控制这个电脑的时候,有可能会遇到还没进入控制界面就出现连接已断开的问题。这是因为我们的系统中还没有安装配置lightdm,而这是向日葵所需要的依赖。解决方法可以参考这里。

5.3 git

git是远程代码托管平台,可以直接执行如下命令进行安装:

sudo apt-get install git

安装完成后,依次执行如下两行命令进行用户名和邮箱的配置(这里用户名可以随意设置,简单好输入就行,因为后面使用的时候经常会要你输入用户名。但是邮箱需要和你注册github或者gitee的一致):

git config --global user.name "xxx"

git config --global user.email "xxx@xxx.com"

然后需要配置ssh。首先执行如下命令生成.ssh目录(使用上面设置的邮箱):

ssh-keygen -t rsa -C "xxx@xxx.com"

执行后会有三个要你确认的东西,全部直接按回车键默认选项即可。完成后,打开用户文件夹,打开主目录的显示隐藏文件的选项,如下图所示:

在这里插入图片描述

然后就可以看到有.ssh文件夹,进入该文件夹,里面有id_rsa和id_rsa.pub两个文件。其中id_rsa是私匙,id_rsa.pub是公匙,我们要的就是公匙。所以,打开id_rsa.pub,复制里面的所有内容,然后进入github或者gitee,登陆自己的账号,找到ssh设置,将复制的内容输入进去保存就可以了。其中,gitee的ssh设置在设置 -> 安全设置 -> SSH公匙 -> 添加公匙,github在Settings -> SSH and GPG keys -> New SSH key。

5.4 sublime

sublime是一个轻量级文本编辑软件,对各种语言的代码都有较高的支持度,使用方便。其完全配置教程可以直接参考这里。

参考链接:

Ubuntu系统安装与深度学习环境配置

Ubuntu18.04深度学习GPU环境配置

ubuntu下安装多版本cuda及版本切换教程

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: linux分区 vscode 电脑 电脑操作系统 系统配置
最后更新:2023年1月20日

Linux服务器网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux服务器网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
AI智能模型生成,DV型SSL证书不支持真实性 通过命令行在Linux系统中运行C和C++程序 如何查看Node.js版本的三种方法查看 编程语言之C++程序文件验证已安装的工具 Linux下修改文件创建时间的时间记录和使用方法介绍 互亿无线SSL证书申请平台无线提供高性价比护航 如何查看Linux内核版本的命令?(3种方式) Win/Ubuntu双系统安装图形界面的过程及注意事项 如何查看Node.js版本号的版本更新频繁的技巧 小编经验分享:Linux下bin文件的打开方法详解 常用的Linux系统版本的方法,简单易懂且实用 Linux系统默认乱码的原因及解决方法!! 《Node.js》如何查看版本号Node Windows和Linux系统之间的文件名乱码问题有哪些? macOS/Linux用户首选CLion+Rust插件,折腾VSCode收益太低 Linux的桌面操作系统适合新手吗? Linux内核加密文件系统公布加入加密功能 工信部:加大力度支持Linux的国产操作系统研发和应用 Linux中如何查看内存使用情况?命令是什么? (Linux基础知识)linux下的路径Linux中的写法
虚拟机网络适配器中没有虚拟网卡的解决方法通过UI和命令行,您可以摆脱Ubuntu上这些应用程序非抱歉,我无法提供完整的红帽Linux安装手册ubuntu读取u盘命令 你可以尝试以下方法来解决UbuntuU盘权限的问题linux下刻录光盘 GHO和ISO镜像的特点和适用范围你知道多少?Xfce4基于GTK+2工具包开发的轻量级桌面环境Linux操作系统的主要特点开放性和开放源代码软件微软官方发布指南:安装Linux的步骤和步骤介绍!在Linux上安装安卓x86Oreo系统的x86架构移植准备Linux发行版如何集成显卡驱动?Nvidia闭源驱动是怎么做的?旧的安卓手机不要扔,可以拿来做一个微型的linux服务器(STM32)字符设备驱动框架:hello驱动基础篇4102你可以在fstab里变更系统目录成根目5261录吧Linux内核源码/内存调优/文件系统/进程管理/设备驱动(初中英语)home目录的恢复和恢复Linux是个什么样的系统?Linux系统安装详系教程,centOS7支持Linux容器安装如果您想要使用GNUGRUB自动检测光盘并启动,您需要在GRUB配置文件中添加一些设置2016年上海事业单位医疗招聘:Linux安装CD的内容CMDebug编程调试命令增强版25中文版CMD编程
7款我眼中最漂亮的Linux发行版,你值得拥有 linux常用压缩命令Linux常用的压缩Linux命令 ubuntu 软件安装卸载 编程之如有错误或未考虑完全的地方,望不吝赐教 VMware软件在一台物理计算机上运行多个独立的操作系统实例 一般来说使用apt安装软件,必须要有root权限 Linux命令如何使用命令忽略子目录?教你如何处理命令 构建网络服务器也许你想建立一个的好方法,你必须编译所有东西 关于分区如果你只是简单地想用上Ubuntu,可以这样操作 #vi~/.bash-profile修改PATH行,把 非常适合网络相关的诊断和性能调试和调试(组图) 【学习】如何用一个命令查看其结构如下? (Linux基础教程)存放系统主要的配置文件是什么? 《TCP/IP网络编程》尹圣雨进程间通信 什么是GNU/Linux?的内核是什么?Linux Linux系统使用动态库so文件的三个步骤实现? (Linux基础知识)linux常用日志文件(二十五) 在本地开发环境中运行ThinkPHP框架需要以下步骤:安装Web服务器 nginx服务器类型证书的下载与安装操作操作 如何使用hdparm命令来检测硬盘的传输速度 Linux命令行的奇妙之处,看看能否让你着迷
标签聚合
操作 应用 文件目录 软件 linux服务器 内核 命令 文件 linux系统 虚拟机
书籍
课程
技术群
技术干货大合集↓
  • 2023年11月 / 82篇
  • 2023年10月 / 93篇
  • 2023年9月 / 90篇
  • 2023年8月 / 93篇
  • 2023年7月 / 93篇
  • 2023年6月 / 90篇
  • 2023年5月 / 92篇
  • 2023年4月 / 90篇
  • 2023年3月 / 126篇
  • 2023年2月 / 84篇
  • 2023年1月 / 161篇
  • 2022年12月 / 186篇
  • 2022年11月 / 77篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2024 ServidoresLinux.Com ALL RIGHTS RESERVED.

Theme Kratos Made By Seaton Jiang