极市导读
保姆级别Ubuntu环境搭建教程! >>加入极市CV技术交流群,走在计算机视觉的最前沿
1 硬件信息
-
系统: windows 10 -
处理器: 英特尔 Core i9-10900X @ 3.70GHz -
主板 :华硕 Pro WS X299 SAGE II(X299 芯片组) -
显卡: NVIDIA GeForce RTX 3090 ( 24 GB / 技嘉 ) × 2 -
内存: 64 GB ( 海盗船 DDR4 3200MHz ) -
主硬盘: 西数 WDS100T3X0C-00SJG0 ( 1 TB / 固态硬盘 ) -
副硬盘: 希捷 ST4000NM0033-9ZM170( 4TB / 机械硬盘) x 8 -
显示器: TUO2400 R240A ( 24 英寸 ) x 2 -
声卡: 瑞昱 @ 英特尔 High Definition Audio 控制器 -
网卡: 英特尔 Ethernet Controller I225-LM / 华硕 -
电源:长城巨龙 全模组 额定2000W
2 软件和包介绍
-
Ubuntu系统:安装Ubuntu 20.04 LTS稳定版本。 -
vim: ubuntu常用文本编译器。 -
SSH: 远程连接工具。 -
frp: 内网穿透,自己配置的电脑很难获取独立IP地址,需要用一个第三方,有独立IP地址的服务器,最为桥梁,传递客户端与服务器的数据,实现远程访问的效果。 -
xrdp: 远程桌面连接,安装后可以用Windows自带的远程桌面连接软件,访问Ubuntu服务器。 -
SAMBA: 远程挂载硬盘,可以把Ubuntu系统下面的硬盘挂在在Windows系统下。 -
显卡: 指硬件部分,如3080,3090显卡,能看得见摸得着。 -
显卡驱动: 通常指NVIDIA Driver,是连接硬件和软件的桥梁,没有驱动,系统就无法识别显卡,也就无法使用显卡。 -
cuda: C语言在GPU编程上的拓展包工具库,是显卡驱动之上的一个并行运算平台的,可以解决复杂的并行计算问题。 -
CuDNN: 在cuda基础上专门为深度学习设计的相关工具库,封装了卷积等算子的库,安装CuDNN才能完成深度学习优化和加速计算。 -
Conda: 一个开发环境管理工具,在开发过程中,经常会用到不同版本的python、pytorch或者其他包,但是同一环节只能安装一个版本的库,conda就可以帮我们隔离出不同的环境,在不同的环境中安装不同版本的库。 -
pytorch: 深度学习开发框架,很多底层的深度学习功能都已经实现,我们只需要调用,就能完成我们的项目,不需要从新造轮子。 -
PyChram:是一种python的编译器工具,带有可以提高开发效率的工具,比如调试、代码跳转、智能提示、代码补全等。适合大型项目。
3 安装 ubuntu系统
3.1 下载 Ubuntu 20.04 LTS
https://ubuntu.com/download/desktop
3.2 制作 u盘启动, 常用的两个u启动制作工具 UltraISO 和 Rufus, 把Ubuntu系统烧录在U盘后插需要安装的电脑
3.3 安装 ubuntu,一键u启动(以主板为准,安装过程省略)
4 配置 ubuntu环境和软件安装
4.1 设置root密码
sudo passwd root
4.2 更换 ubuntu 的国内源
4.2.1 备份默认源
# 备份默认源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo gedit /etc/apt/sources.list
回复默认源:sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list
4.2.2 内容替换为:
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
4.2.3 更新软件列表
sudo apt update # 更新apt软件源
sudo apt upgrade # 更新
报错 ERROR:Unable to lock directory /var/lib/apt/lists/
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
sudo dpkg --configure -a
报错 ERROR:Could not get lock /var/lib/dpkg/lock-frontend.
ps aux|grep apt
sudo kill -9 pid
4.3 安装 vim
sudo apt install vim
4.4 安装 SSH(远程连接)
sudo apt install ssh
#使用:ssh -p 22 root@192.168.31.176
4.5 安装 frp(客户端和服务端都需要下载)
tar -zxvf frp_xxxx.tar.gz
服务端: 修改frps.ini内容改为:
[common]
#frp服务的端口号,本地服务器和云服务器保持一致
bind_port = 7000
# frp的web界面的端口号,自己定义
dashboard_port = 7001
# web界面的登陆账户,自己定义
dashboard_user = wentop
# web界面的登陆密码,自己定义
dashboard_pwd = 123456
# frp验证方式,本地服务器和云服务器保持一致
authentication_method = token
# frp客户端连接时的密码,本地服务器和云服务器保持一致
token = 123456
启动服务端服务:
# 开启服务端 方法一
./frps -c ./frps.ini
# 或者后台开启 方法二
nohup ./frps -c ./frps.ini &
客户端: 修改frpc.ini内容改为:
[common]
# 云服务器公网ip
server_addr = xx.xx.xx.xx
# 验证方式,本地服务器和云服务器保持一致
authentication_method = token
# frp连接密码,本地服务器和云服务器保持一致
token = 123456
# frp服务端口,本地服务器和云服务器保持一致
server_port = 8989
# 我们在访问 [本地服务器:22] 可直接用 [云服务器公网ip:222]方式访问
[Fusion-ssh]
# 方式
type = tcp
# 本地ip
local_ip = 127.0.0.1
# 本地穿透的端口
local_port = 22
# 映射的端口
remote_port = 222
[Fusion-xxx]
type = xxx
local_ip = 127.0.0.1
local_port = xxx
remote_port = xxx
启动客户端服务:
#开启客户端服务 方法一
./frpc -c ./frpc.ini
# 或者后台开启 方法二
nohup ./frpc -c ./frpc.ini &
4.6 安装 xrdp(远程桌面连接)
sudo apt install xrdp # 安装,默认自动启动
sudo systemctl status xrdp # 验证是否在运行
sudo adduser xrdp ssl-cert # 添加xrdp用到到ssl-cert组,不修改,默认只读
sudo systemctl restart xrdp # 重启xrdp服务
配置好后,就可以用Windows自带的远程桌面软件输入服务器的IP地址,就可以访问服务器。
4.7 安装 SAMBA(远程挂载硬盘)
sudo apt-get install samba samba-common-bin # 安装SAMBA
sudo gedit /etc/samba/smb.conf # 配置文件
在文件末尾添加下面内容(注释需单独一行)
# 共享文件夹的命名
[home]
# 可以访问挂载硬盘的用户
comment = Fusion WorkStation Storage
# 共享文件的路径
valid users = wenjtop,root
# 可被其他人看到资源名称
path = /home/wenjtop/
# 文件可写
browseable = yes
# 新建文件的权限为 664
writable = yes
create mask = 0664
# 新建目录的权限为 775
directory mask = 0775
添加ubuntu以存在的用户wenjtop
sudo smbpasswd -a wenjtop # 添加用户wenjtop
sudo /etc/init.d/samba-ad-dc restart # 重启服务
客户端操:我的电脑->计算机->映射网盘驱动->输入:\\192.168.188.41\home
4.8 安装搜狗拼音
4.8.1 安装fcitx输入框架
sudo apt install fcitx-bin
sudo apt-get install fcitx-table
选择fcitx框架,后重启。
选择fcitx框架
现在就可以选择系统自带拼音(安装ubuntu时选择中文)
添加图片注释,不超过 140 字(可选)
4.8.2 下载搜狗拼音
http://pinyin.sogou.com
4.8.3 安装
sudo dpkg -i sogou...版本号.deb
# 若缺少依赖输入:sudo apt install 查看安装依赖包的命令行。
language->manage installed languages->输入法系统改成fcitx->重启。
4.9 安装 google浏览器
sudo dpkg -i google-chrome-stable_current_amd64.deb # 安装
4.10 安装向日葵
https://sunlogin.oray.com/download?categ=ent
sudo dpkg -i ./SunloginClient_11.0.1.44968_amd64.deb
4.11 修改pip源
sudo 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
5 安装显卡驱动
重启
6 安装 CUDA 11.3
https://developer.nvidia.com/cuda-11.3.0-download-archive?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=20.04&target_type=deb_local
输入下面命令行:
wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run
sudo sh cuda_11.3.0_465.19.01_linux.run
添加路径,修改.bashrc 文件:
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
安装成功:nvcc -V
7 安装 CuDNN
https://developer.nvidia.com/rdp/cudnn-download
需要注册登陆,下载cuDNN Library for Linux (x86_64)。
# 解压
tar -xzvf cudnn-11.3-linux-x64-v8.2.1.32.tgz
# 复制到 cuda路径下
sudo cp cuda/lib64/* /usr/local/cuda-11.3/lib64/
sudo cp cuda/include/* /usr/local/cuda-11.3/include/
# 查看CUDNN的版本信息
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
显示如上,说明安装成功。
8 Miniconda 安装
8.1 下载
https://docs.conda.io/en/latest/miniconda.html#
8.2 安装
chmod +777 ./Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh
8.3 更换源
https://mirror.tuna.tsinghua.edu.cn/help/anaconda/
sudo gedit ~/.condarc
复制内容到.condarc
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
8.4 创建conda环境和激活环境
conda create -n torch python=3.8 # 创建环境 name表示环境名
conda activate torch # 激活环境 name表示环境名
显示如上,说明安装成功。
8.5 conda 常用命令
conda --version # 查看conda版本
conda update conda # 更新至最新的conda
conda update --all # 更新当前环境所有包
conda update package_name # 指定包至最新
conda env list # 查看已有的虚拟环境
conda create -n python_3.9 python=3.9 # 创建虚拟环境
conda create --name Py_3.9 --clone python_3.9 # 复制虚拟环境
conda activate python_3.9 # 激活虚拟环境
conda remove -n python_3.9 --all # 删除虚拟环境
conda list # 查看当前环境所有包情况
conda search numpy # 查看numpy有哪些版本
conda install numpy # 安装numpy包在当前环境
conda remove numpy # 删除当前环境中的numpy包
conda config --remove-key channels # 回复默认源
conda install anaconda-clean # 卸载conda
anaconda-clean
anaconda-clean --yes
9 安装 pytorch
9.1 选择Pytorch版本
nvcc -V #查看Pytorch对应的cuda版本,显示release 11.3, V11.3.58
9.2 在官网查找conda命令
https://pytorch.org/get-started/previous-versions/
命令行里面输入nvcc -V,查看cuda版本,若cuda为11.3,就选择下图标注框里的命令行安装。
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch
我们在安装显卡驱动时会安装cudatoolkit,在安装pytorch时也会安装cudatoolkit?安装显卡驱动时,cudatoolkit是一个完整安装包,而安装pytorch时安装的cudatoolkit只会安装pytorch会使用的部分,两个cudatoolkit是独立的,都在工作在显卡驱动上,所以我们还需要安装cudnn。cudatoolkit和cuda版本必须一样。
验证是否安装成功
10 安装 pychram
在ubuntu software直接搜索pychram。或者下面链接访问官网。
https://www.jetbrains.com/pycharm/download/#section=linux
导航栏:https://zhuanlan.zhihu.com/p/400628805
如果有疑问,建议,错误,欢迎留言大家指正。。。
点击阅读原文进入CV社区
收获更多技术干货

