手把手教你搭建深度学习环境
Posted ghsticker
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了手把手教你搭建深度学习环境相关的知识,希望对你有一定的参考价值。
最近实验室买了一台新的机器,正好要从头配置机器的环境,把环境记录一下
1.安装ubuntu系统
1.1制作系统盘
首先,我们需要准备三个东西
有个这三样我们就可以开始安装我们的ubuntu系统了。
我们需要先安装好UISO9,制作U盘镜像系统。其中不需要购买软件,只需要试用即可。
第一步:打开我们下载好的iso文件
第二步:选择启动,点击写入硬盘映像,并确认硬盘驱动器是你U盘,映像文件是你下载的ISO文件,点击写入,三四分钟后即可写入完成
1.2 系统安装
我们要在自己本身的要在系统中划出一部分空间来存放ubuntu系统,所以我把分出了400G的硬盘用来安装ubuntu系统。
我们在安装系统之前,还是需要按F2进入机器的bios,修改几个设置,
- 找到Secure Boot 将他设置成Disable
- 在中设置成UEFI快速启动
这两步中根据品牌的不同,位置也是不同的,在列表中仔细寻找到该位置即可。
设置完以后,重新启动电脑,按F12,选择启动的顺序,这个时候我们需要选择U盘选项进行启动,我们会进入U盘引导项,选择install Ubuntu即可。
接下来就是我们安装ubuntu系统的过程了,一定要注意在安装的时候要断网安装
!
- 先选择中文简体,然后点击安装Ubuntu
- 选择键盘布局,我们直接默认,点击继续。
- 这里我们的硬盘空间足够大,选择正常安装,但是一定要勾掉安装Ubuntu是下载更新。
- 安装类型选择其他选项,继续
-
然后我们选择刚开始在window上划分出来给ubuntu系统的空间,点击+号,把挂载点选择成 / 即为根目录。最后点击现在安装。
-
下面一步选择时段直接继续就行,然后在设置一个登陆的名字和密码,点击继续后等待安装。
这样Ubuntu系统就安装完毕了。装系统的内容可以参考这篇博客,写的超级详细
安装以后发现一个巨大的坑,就是ubuntu无法联网,经过搜索各种博客,最终解决,可查看这篇博客
接下来我们要对ubuntu系统进行换源,这里也解释一下为什么在安装ubuntu的时候特意强调一定要断网在安装,因为ubuntu安装过程中会下载很多东西,因为国内网络原因,网速会特别的慢,这样会导致我们好几个小时都安装不好ubuntu。
接下来我们将软件源更换成国内的
- 我们现将原来的源备份
cp /etc/apt/sources.list /etc/apt/sources.list.bak
- 将源的内容设置为阿里云镜像,这里需要注意要用vi,而不要用vim
sudo vi /etc/apt/sources.list
#将sources.list文件修改为:
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
- 更新软件列表:
sudo apt update
sudo apt upgrade
2. 安装Anaconda
进入官网下载anaconda,也可以使用清华源下载这个会快一些
下载好后,我们开始安装anaconda
bash Anaconda3-2019.03-Linux-x86_64.sh
接下来回车继续,后面会出现一堆的License许可声明,按Q,就会到底部,出现下面如图输入yes,回车
接下来是确认安装目录,我们也是回车
接下来是询问是否进入系统我们就初始化环境,我们这里选择no
出现下面的内容即为安装成功。
因为我们在初始化的时候选择的是no,所以我们需要手动的配置conda的环境变量。
# 在终端输入,这里的/home/gh/anaconda/bin就是你安装anaconda的路径下的bin文件夹
echo 'export PATH="/home/gh/anaconda/bin:$PATH"' >> ~/.bashrc
# 更新文件
source ~/.bashrc
怎么查看我们安装是否成功呢?运行下面这个命令,要是显示的是你的anaconda的python环境,那就是对的。
which python
安装好anaconda3后,需要给anaconda换成国内的镜像源
我们可以直接运行下面的内容进行修改镜清华源像源:
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/fastai/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --append channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
# 搜索时显示通道地址
conda config --set show_channel_urls yes
但是这样运行完以后,配置文件会是这样:
我们需要把- default
那一行删除掉
因为要后面可能需要科学上网,所以请大家自行学习科学上网方式,使用科学上网,会让你的安装环境过程减少一大半的问题。
3. 安装 CUDA
首先,我们需要去CUDA官网下载,普通网络可能进去有点慢,所有最好可以科学上网。
选择自己想要下载的版本,这里我下载的CUDA11.0,选择runfile版本的下载。
.run形式安装cuda,清理原有显卡驱动后,先安装自己显卡对应的驱动。
.deb形式安装cuda,由于会默认安装自带的旧版本驱动,故安装成功后,卸载此驱动,再重新安装显卡对应的驱动。
下面会给出下载命令行
wget http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run
这里如果wget下载比较慢的话,可以配置wget后面的链接到迅雷,通过它下载这样会快一些。
下载完后,我们安装前先看一下nvidia的驱动
nvidia-smi
标1的位置你现在nvidia驱动的版本,标2的位置是安装CUDA的最高版本
这里一定要对应好自己下载的CUDA版本与NVIDIA Driver与Linux与GCC的版本对应关系,可参考博客查看对应关系
执行安装命令:
sudo sh cuda_11.0.2_450.51.05_linux.run
安装的时候会出现下图,选择continue
,这里网上有一些博客会说移除掉现有的Nvidia驱动,其实并不需要,保证现装的驱动版本正确即可,还有一些博客会让你禁用nouveau,并且卸载点图形界面,重新安装自己下载的驱动,我试过…然后系统崩溃了,又重新装系统从头配环境…
下一步,我们输入accept
再下一步,因为我们已经有驱动,一定要把Driver这一个给勾掉,不要选他,按回车就可以取消勾选了,最后选择Install,安装
最后安装完毕以后会出现:
安装好以后,需要配置环境变量
sudo gedit ~/.bashrc
在最后面加上
# CUDA Soft Link
export PATH=/usr/local/cuda-11.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
刷新一下:
source ~/.bashrc
测试CUDA是否安装成功,输入
nvcc -V
显示如下,安装成功
4. 安装cuDNN
首先我们需要下载cuDNN,下载的时候我们需要他的官网需要我们注册登录才可以下载,但是他注册登录的功能还是崩溃的…我们需要绕过他的注册登录
点击这里下载,找到自己对应版本的cuDNN,这里我选择cuDNN8.1.1。
点击右键有一个复制链接地址,把这个地址复制到迅雷上,就可以避免注册和登陆,但是有的版本采用这种方法下载的时候,迅雷会一直显示连接资源,出现这种情况,就只能老老实实注册登陆吧。
下载好以后,首先解压:
tar -xvf cudnn-11.2-linux-x64-v8.1.0.77.tgz
复制解压出来的文件到安装好的CUDA环境中,输入:
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
# 更改权限输入
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
5.配置SSH & 远程桌面
5.1 配置SSH
因为在学校里面,只要连接校园网就是在同一个局域网下,我将ubuntu系统配置SSH,用于远程连接使用。
sudo apt install ssh
会自动安装好很多依赖包并启动服务,完成之后用XShell等软件就可以SSH登录服务器了。
5.2配置远程桌面
为了方便的可以直接在局域网下远程控制桌面版Ubuntu,安装一下Xrdp,Xrdp是一个开源工具,允许用户通过Windows RDP访问Linux远程桌面。 除了Windows RDP之外,xrdp工具还接受来自其他RDP客户端的连接,如FreeRDP,rdesktop和NeutrinoRDP。 Xrdp现在支持TLS安全层,这样就可以使用window自带的远程工具进行远程控制了。
还有一点要注意:有的Xwindow软件是不太兼容xrdp的(比如ubuntu 18.04的默认桌面),但是ubuntu 20.04使用的Gnome是完全ok的。
安装过程如下:
sudo apt install xrdp
安装完成xrdp 服务将会自动启动,可以输入下面的命令验证它:
sudo systemctl status xrdp
输出会是这个样子
● xrdp.service - xrdp daemon
Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2020-05-22 17:36:16 UTC; 4min 41s ago
…
默认情况下,Xrdp 使用/etc/ssl/private/ssl-cert-snakeoil.key
,它仅仅对“ssl-cert” 用户组成语可读。运行下面的命令,将xrdp
用户添加到这个用户组:
sudo adduser xrdp ssl-cert
重启 Xrdp 服务,使得修改生效:
sudo systemctl restart xrdp
这样就可以使用window自带的远程控制电脑了。
我在配置完以后还是出现了一点问题,在连接成功后远程一直是黑屏
,要是同样出现这种情况,可以采用下面的方法进行解决:
vim /etc/xrdp/startwm.sh
在文件中添加
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
最后重启使配置生效:
sudo systemctl restart xrdp
以上是关于手把手教你搭建深度学习环境的主要内容,如果未能解决你的问题,请参考以下文章
手把手教你搭建深度学习平台——避坑安装theano+CUDA