1、前言

实验室深度学习服务器从硬件到系统和软件上的配置,不使用外包的服务器,从装机到管理全程自己摸索,从而实现实验室多用户共同共用服务器资源,目前服务器上所有的硬件配置就都是INTEL和NVIDIA,系统上使用Ubuntu系统,同样其他Linux操作系统也可以,但是目前来说Ubuntu对于深度学习服务器来说还是适用性最广的。

2、硬件方面

服务器的配置方面,首先是CPU,普遍选择Intel至强系列芯片居多,当然最近几年AMD确实是香,但是从软件兼容性角度考虑,还是选择Intel;显卡方面就不必多说了RTX30系列真的香;关于电源方面,推荐美商海盗船的电源,一定要选择有质量保障的,电源功率方面最好选择较大一点的根据显卡具体情况而定;关于散热方面,可选择风冷也可以选择水冷,水冷噪音会小一点;关于内存条方面,运行内存越大越好对于深度学习的训练速度有帮助;关于存储硬盘部分,机械硬盘选择西数或者希捷硬盘,固态硬盘选择三星的固态。

3、系统方面

系统方面选择Ubuntu20.04版本,比较新且比较稳定好看

3.1、安装Ubuntu20.04

3.2 换镜像源

  • 备份原来的镜像源文件
cp /etc/apt/sources.list /etc/apt/sources.list.bak
  • 更改镜像源文件的内容
sudo vim /etc/apt/sources.list
  • 将文件里的所有内容替换为以下阿里源(阿里的镜像源亲测比较快而且好用)
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
 deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
 deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
 deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
 deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
 deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
 deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
 deb-src 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-backports main restricted universe multiverse
  • 更新一下
sudo apt update
sudo apt upgrade

3.3 关闭自动休眠

  • 关闭自动休眠
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
  • 查看自动休眠是否关闭
systemctl status sleep.target

3.4 挂载硬盘

  • 显示硬盘及所属分区情况
sudo fdisk -l
  • 如果是完全空的全新的硬盘插上去先对其分区,如果已经分区格式化好了就跳过此步
# 比如
sudo fdisk /dev/sdb
# 在Command (m for help)提示符后面输入n,执行 add a new partition 指令给硬盘增加一个新分区。
# 出现Command action时,输入e,指定分区为扩展分区(extended)。
# 出现Partition number(1-4)时,输入1表示只分一个区。
# 后续指定起启柱面(cylinder)号完成分区。
# 在Command (m for help)提示符后面输入w,保存分区表

# 表示将分区格式化成ext4文件系统类型
sudo mkfs -t ext4 /dev/sdb
  • 挂载硬盘分区,显示硬盘挂载情况
df -l
  • 在/media/目录下创建挂载文件夹
sudo mkdir /media/Harddisk/
  • 将硬盘挂载到新创建的文件夹下
sudo mount -t ext4 /dev/sdb /media/Harddisk
  • 配置硬盘在系统启动自动挂载
sudo vim /etc/fstab

# 在该文件最后一行添加
/dev/sdb     /media/Harddisk    ext4     defaults       0 0
  • 重新启动即可

3.5 更改pip镜像源

  • 更改配置文件
cd ~
mkdir .pip
sudo vim ~/.pip/pip.conf

# 加入下面内容
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/ 
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn

4、软件方面

4.1 配置Windows的远程桌面xrdp

  • 安装轻量型的远程控制桌面Xfce
sudo apt-get install xfce4
  • 安装xrdp协议
sudo apt-get install xrdp
  • 启动xrdp协议
sudo adduser xrdp ssl-cert  
sudo systemctl restart xrdp
  • 配置xfce环境
echo xfce4-session >~/.xsession

4.2 Ubuntu添加多用户

  • 添加用户
sudo adduser 用户名
  • 根据提示设置用户名的密码
  • 设置用户权限,这里是给全部权限
sudo gedit /etc/sudoers
  • 打开文件后添加内容
用户名   ALL=(ALL:ALL)  ALL
  • 切换到用户
su 用户名
  • 配置用户的远程桌面环境
echo xfce4-session >~/.xsession

4.3 配置Zerotier内网穿透

  • 注册登录Zerotier并创建一个网络
  • Ubuntu安装zerotier
curl -s https://install.zerotier.com | sudo bash
  • 将服务器加入zerotier的网络中即刚刚创建的网络
sudo zerotier-cli join 你的network ID

2021 工作站 深度学习 配置 工作站配置推荐_机器学习

  • 找到加入的设备然后打勾允许加入
  • Windows下使用远程桌面访问,win+R输入mstsc然后输入服务器分配的用户名和密码即可登录

4.4 安装CUDA和Cudnn

  • 去官网下载CUDA安装包CUDA下载官网,不要下载最新的CUDA
  • 选择runfile(local),然后运行网页上对应提示的命令进行安装
  • 前面已经卸载过旧版本了直接Continue就好。然后根据提示选择安装选项,注意不要勾选第一个安装显卡驱动的,因为之前已经安装过了。
  • 配置CUDA环境变量
sudo vim ~/.bashrc

# 最后一行加入(注意把文件夹名改成对应安装的CUDA文件夹名)
export CUDA_HOME=/usr/local/cuda-11.0
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}

# 生效环境变量
source ~/.bashrc
  • 进入到CUDNN的下载官网cudnn下载,选择对应CUDA版本的cudnn
  • 解压压缩包
tar -xzvf cudnn-11.0-linux-x64-v8.0.5.39.tgz
  • 使用以下两条命令复制这些文件到CUDA目录下
# 注意改一下对应的文件夹名
 sudo cp cuda/lib64/* /usr/local/cuda-11.0/lib64/
 sudo cp cuda/include/* /usr/local/cuda-11.0/include/
  • 拷贝完成之后,可以使用以下命令查看CUDNN的版本信息:
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2