一篇文章带你配置个人linux深度学习服务器
内容较长建议先码后看,文章最后提供可下载的pdf版本。
最近这两天重装了一下系统,安装了我个人必要常用的软件,才了不少坑,在此记录一下,希望能给有需要的朋友一点帮助。
目前配置环境内容为(随后在使用中添加, 有大佬有ubuntu宝藏软件或者其他的技巧,希望各位大佬不吝赐教):
ubuntu18.04
nvidia driver 440.33.01
cuda 10.2
cudnn 7.6.5.32
anaconda3-20.07
gcc
g++
make
pip与anaconda源更换
pytorch1.6
pycharm2020.2.3
vscode
chrome浏览器
typora markdown编辑器
福昕pdf阅读器
网易云音乐
electronic-wechet
百度网盘
frp反向代理,给自己的电脑配置公网ip
1.1 利用UltraISO制作启动盘(在另一台windows上)
1.2 安装ubuntu18.04
1.3 ubuntu18.04拨号上网
2. nvidia driver 440.33.01
2.1 禁用nouveau
2.2 驱动安装
3. cuda 10.2与cudnn7.6.5.32
3.1 安装cuda10.2
3.2 安装cudnn
4. anaconda3-2020.07
5. pip与anaconda源更换
5.1 anaconda更换为清华源
5.2 pip更换为清华源
6. pytorch1.6
7. pycharm2020.2.3
7.1 使用二进制文件安装
7.2 使用snap安装
8. vscode
9. chrome浏览器
10. typora markdown编辑器
10.1 命令行安装
10.2 deb文件安装
11. 福昕pdf阅读器
12. 网易云音乐
13. electronic-wechat
14. 百度网盘
15 反向代理公网ip
15.1 下载frp
15.2 公网服务器端
15.3 内网服务器端
1. ubuntu18.04
系统iso文件下载地址://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/
在下载的时候,我刚开始选择了18.04.5,但是在拨号上网的时候,发现网速总是特别的慢,而且总是掉线,搞不定,后来选用了18.04.1安装之后就正常了,这里记录一下安装的过程。
1.1 利用UltraISO制作启动盘(在另一台windows上)
需要一个空u盘,4g以上就够
在上面提供的网址下载ISo镜像之后,下载UltraISO软件(这里在windows上制作启动盘),下载网址://www.ultraiso.com/download.html
安装之后点击试用(直接试用就行,不用购买)
- 打开iso文件(文件->打开,选中下载的iso文件即可)
- 选中u盘
- 启动–>写入硬盘映像
-
便捷启动–>写入新的启动器引导扇区–>syslinux
-
点击写入等待完成
1.2 安装ubuntu18.04
- 开机进入BIOS,然后选择u盘启动方式
- 点击Install Ubuntu(选择英文还是中文版本的系统)
- 选择英文或者中文版本的键盘布局
- 选择最小化安装
-
选择安装方式,我这里选择自行设置分区,我只分出了
swap
与/
这两个,也可以参考一些博客上的分区方案。这里也可以选择,清楚硬盘,直接安装,不用自行设置分区,简单操作。
1.3 ubuntu18.04拨号上网
我之前下载的是ubuntu18.04.5,网络链接一直有问题,连接不上,或者速度特别慢,这里下载ubuntu18.04.1正常。
- /usr/share/applications 找到Network connections
- 打开Network Connections,点击左下角的 + 。
- 选择DSL/PPPoE(拨号上网)
- 输入用户名与密码
连接名称(connect name)随意起一个。
然后在General中勾选自动连接,在IPV6设置中点击忽略,禁用ipv6,否则可能会出现经常掉线的问题。
最后由于ubuntu18中,有线链接与拨号链接冲突,因此需要关掉有线链接。
将有线链接中的自动链接勾选掉。关闭有线连接即可。
2. nvidia driver 440.33.01
驱动下载地址://developer.nvidia.com/cuda-toolkit-archive
2.1 禁用nouveau
- 创建文件:
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
- 插入以下内容:
blacklist nouveau
options nouveau modeset=0
执行以下命令使禁用生效并且重启:
sudo update-initramfs -u
sudo reboot
重启后可以验证是否生效:
lsmod | grep nouveau
若没有输出,则禁用生效.
2.2 驱动安装
安装使用如下两条命令:
**需要注意:**可能网上有教程说需要–no-opengl-files参数,其实这个参数有时候加上会出现循环登录,有时候不加上会出现循环登录。安装完成利用显卡运行程序的时候会出现屏幕刷新率很低,一卡一卡的,可能也是这个参数的锅,加与不加这个参数试着来呗。
chmod +x NVIDIA.run(这里是你下载的run file文件的名字)
sudo sh NVIDIA.run(下载的runfile文件的名字)
在安装的时候可能会报没有gcc与make的错误。需要先安装gcc与make
sudo apt install gcc
sudo apt install make
安装完成后输入:
nvidia-smi
3. cuda 10.2与cudnn7.6.5.32
3.1 安装cuda10.2
cuda run file下载地址://developer.nvidia.com/cuda-toolkit-archive
sudo chmod +x cuda_10.2.89_440.33.01_linux.run
sh cuda_10.2.89_440.33.01_linux.run
# accept
然后会出现这样的东西。
CUDA Installer
-[X] driver
-[X]CUDA ToolKit
-[X]CUDA Samples
-[X]CUDA Demo Suit
-[X]CUDA Documentation
Options
Install
由于之前已经安装过显卡驱动, 这里选中driver,点击回车将X号去掉, 然后选择Install回车即可正常安装。
3.2 安装cudnn
下载地址://developer.nvidia.com/rdp/cudnn-archive
下载完成后,选择对应的版本,然后运行如下的命令:
# 解压下载的文件
tar -zxvf cudnn.tgz
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda-10.2/lib64/
sudo cp cuda/include/cudnn.h /usr/local/cuda-10.2/include/
# 为所有用户设置读取权限
sudo chmod a+r /usr/local/cuda-10.2/include/cudnn.h
sudo chmod a+r /usr/local/cuda-10.2/lib64/libcudnn*
4. anaconda3-2020.07
anaconda下载地址://repo.anaconda.com/archive/
下载之后直接运行对应的Anaconda.sh即可
sh Anaconda3-2020.07-linux-x86_64.sh
# 最后一个选项是否进行conda init选择no
# 然后关掉这个终端,选择另外一个终端进行conda list的测试
5. pip与anaconda源更换
将anaconda与pip的源更换为清华源,提高下载包的速度。
5.1 anaconda更换为清华源
在终端中输入以下的命令
conda config --add channels //mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels //mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels //mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels //mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels //mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --add channels //mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels //mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
测试是否修改源成功
conda config --show channels
5.2 pip更换为清华源
# 建立文件夹
mkdir ~/.pip
cd ~/.pip
# 创建pip.conf文件
touch pip.conf
sudo gedit ~/.pip/pip.conf
在对应的文件中添加下面的内容,修改为清华源
[global]
index-url = //pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
输入以下的内容,查看是否更新成功
pip config list
6. pytorch1.6
利用conda安装pytorch1.6,官方网址://pytorch.org/
conda install pytorch==1.6.0 torchvision==0.7.0 cudatoolkit=10.2 -c pytorch
7. pycharm2020.2.3
7.1 使用二进制文件安装
下载地址://www.jetbrains.com/zh-cn/pycharm/download/#section=linux
下载完成之后解压,在bin文件夹下有Pycharm.sh
的文件,运行这个可执行文件。
cd bin/
sh pycharm.sh
然后激活之后,随便新建一个工程。然后在tools中Create desktop entry
,然后就可以在系统中搜索到pycharm,打开之后固定到收藏夹即可。
7.2 使用snap安装
直接使用snap安装,更简单
sudo snap install [pycharm-professional] --classic
8. vscode
下载地址://code.visualstudio.com/docs/?dv=linux64_deb
下载deb文件之后,直接运行如下的命令安装(###下载的文件名字)
sudo dpkg -i ###.deb
9. chrome浏览器
下载deb文件之后,直接运行如下的命令安装(###下载的文件名字)
sudo dpkg -i ###.deb
10. typora markdown编辑器
10.1 命令行安装
# or use
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE
wget -qO - //typora.io/linux/public-key.asc | sudo apt-key add -
# add Typora's repository
echo -e "\ndeb //typora.io/linux ./" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
# install typora
sudo apt-get install typora
10.2 deb文件安装
在如下的地址中选择一个合适的版本。
//typora.io/windows/dev_release.html
可以直接点击下载,
也可以使用链接,下载网址一般为//typora.io/linux/typora_${version}_amd64.deb
11. 福昕pdf阅读器
下载地址://www.foxitsoftware.cn/downloads/
点击图标,一定是图标(不能是高速下载这四个字)。然后在弹出的窗口中选择linux 64bit下载
下载run file之后,直接运行这个可执行文件,即可安装
12. 网易云音乐
//d1.music.126.net/dmusic/netease-cloud-music_1.2.1_amd64_ubuntu_20190428.deb
下载deb文件之后,直接运行如下的命令安装(###下载的文件名字)
sudo dpkg -i ###.deb
13. electronic-wechat
如下为github链接: //github.com/geeeeeeeeek/electronic-wechat
下载安装这个软件最无脑的操作就是,直接在ubuntu软件商店中,直接搜索下载
14. 百度网盘
下载deb文件之后,直接运行如下的命令安装(###下载的文件名字)
sudo dpkg -i ###.deb
15 反向代理公网ip
远程访问管理服务器需要一个公网的IP frp是一款好用内网穿透工具,FRP 全名:Fast Reverse Proxy。FRP 是一个使用 Go 语言开发的高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务。FRP 支持 TCP、UDP、HTTP、HTTPS等协议类型,并且支持 Web 服务根据域名进行路由转发。
15.1 下载frp
//github.com/fatedier/frp/releases
下载之后解压。frps与frps.ini是外网服务器端要使用的文件 frpc与frpc.ini是内网主机要使用的文件
15.2 公网服务器端
修改配置文件 $ vi frps.ini,如下:
[common]
bind_port = 7000 #frp服务端端口
配置很简单,然后启动:
nohup ./frps -c frps.ini &
15.3 内网服务器端
修改配置文件 $ vi frpc.ini,如下:
[common]
server_addr = 0.0.0.0 #frp服务端地址,可以填ip或者域名,这里假设为0.0.0.0
server_port = 7000 #frp服务端端口,即填写服务端配置中的 bind_port
[ssh1]
type = tcp #连接类型,填tcp或udp
local_ip = 127.0.0.1 #填127.0.0.1或内网ip都可以
local_port = 22 #需要转发到的端口,ssh端口是22
remote_port = 5000 #frp服务端的远程监听端口,即你访问服务端的remote_port就相当于访问客户端的 local_port,如果填0则会随机分配一个端口
[tensorboard1]
type = tcp #连接类型,填tcp或udp
local_ip = 127.0.0.1 #填127.0.0.1或内网ip都可以
local_port = 6006 #需要转发到的端口, tensorboard 端口为6006
remote_port = 5001 #frp服务端的远程监听端口,即你访问服务端的remote_port就相当于访问客户端的 local_port,如果填0则会随机分配一个端口
[jupyter1]
type = tcp #连接类型,填tcp或udp
local_ip = 127.0.0.1 #填127.0.0.1或内网ip都可以
local_port = 8888 #需要转发到的端口,jupyter端口是8888
remote_port = 5002 #frp服务端的远程监听端口,即你访问服务端的remote_port就相当于访问客户端的 local_port,如果填0则会随机分配一个端口
启动客户端程序:
$ nohup ./frpc -c frpc.ini &
pdf版本的文章请移步github自取:pdf文章地址