anaconda linux安装_深度学习环境搭建、配置及使用之二(下):深度学习必备基础环境安装...

关注“哪儿趣”,不定时更新,选择“星标”或“置顶”,

第一时间获取原创质量文章。

本文大约9000字,预计阅读时间22分钟。

ca256a676b26482f45cc9cf319fbe6d4.png

 本文链接 

  • Github:https://github.com/kangzhiheng/GitLocalDoc
  • 个人网站:https://kangzhiheng.top/post/10-服务器环境搭建、配置及使用

系列文章导读:本系列文章 《深度学习环境搭建、配置及使用》 主要介绍了自己使用服务器进行管理和科研的一点心得,即:如何搭建和配置深度学习环境,普通用户可以自由切换多版本CUDA、cuDNN版本,自由组合创建不同版本的Tensorflow、PyTorch等深度学习环境。

本文摘要:本文是系列文章《深度学习环境搭建、配置及使用》的第二部分的下半部分,主要介绍了Tensorflow、PyTorch等深度学习框架所必备的AnacondaPipOpencv、多版本GCC环境的在CentOS 7.7中的配置(其它发行版以此类比),包括下载、安装、卸载、查看等操作。每一个链接都很准确,每一个步骤都很明确。

关键词:Anaconda;pip;Opencv;GCC;

本部分所有指令,建议在bash环境下运行,使用zsh的shell请切换为bash,避免不必要的麻烦。

注意:标题右上角带有"*"标记的,意为这一部分内容需要管理员操作。

Anaconda3安装

安装Anaconda3
    在官方repo (https://repo.anaconda.com/archive/) 下载Anaconda安装包(.sh后缀名),如果下载速度过慢,访问国内镜像源 (https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/) 下载,右键复制对应Anaconda包的链接,使用wget指令下载,下载时注意该Anaconda包是基于Python 3.6还是Python 3.7的,推荐Python 3.6,下载Anaconda3-5.2.0-Linux-x86_64.sh文件
cd ~wget -c https://repo.anaconda.com/archive/Anaconda3-5.2.0-Linux-x86_64.sh

Anaconda3-5.2.0-Linux-x86_64.sh这是 python3.6 版本的Anaconda安装包,继续运行

bash Anaconda3-5.2.0-Linux-x86_64.sh

Enter键继续,出现Anaconda版本的一些说明,此时按一下space(空格)键,有如下提示,在[no] >>> 后面输入yes,如下所示:

Do you accept the license terms? [yes|no][no] >>> yes

紧接着有提示

Anaconda3 will now be installed into this location:/home/test/anaconda3  - Press ENTER to confirm the location  - Press CTRL-C to abort the installation  - Or specify a different location below[/home/test/anaconda3] >>>

按下Enter键即可开始安装,安装完成后,提示如下

installation finished.Do you wish the installer to prepend the Anaconda3 install locationto PATH in your /home/test/.bashrc ? [yes|no][no] >>> yes

[no] >>> 后面输入yes后出现Anaconda安装成功的消息,此时出现是否安装Microsoft VSCode的消息,输入no即可。

python3.6版本的Anaconda安装完成,此时在终端输入conda,会提示conda:未找到命令,不要慌,反手输入

source ~/.bashrc
命令刷新环境,再输入conda即有消息提示,表明conda安装成功。 配置Anaconda国内开源镜像 显示有关当前conda安装的信息:
conda info

输出

     active environment : None       user config file : /home/adoredee/.condarc populated config files :           conda version : 4.8.3    conda-build version : not installed         python version : 3.7.0.final.0       virtual packages : __glibc=2.17       base environment : /home/adoredee/anaconda3  (writable)           channel URLs : https://repo.anaconda.com/pkgs/main/linux-64        https://repo.anaconda.com/pkgs/main/noarchhttps://repo.anaconda.com/pkgs/r/linux-64           https://repo.anaconda.com/pkgs/r/noarch          package cache : /home/adoredee/anaconda3/pkgs/home/adoredee/.conda/pkgs       envs directories : /home/adoredee/anaconda3/envs /home/adoredee/.conda/envs               platform : linux-64             user-agent : conda/4.8.3 requests/2.23.0 CPython/3.7.0 Linux/3.10.0-957.el7.x86_64 centos/7.7.1908 glibc/2.17                UID:GID : 1000:1000             netrc file : None           offline mode : False

可以看到在conda安装好之后,默认的镜像是官方的(channel URLs),由于官网的镜像在境外,国内访问较慢,配置国内的镜像能够加快访问的速度。

上海交通大学镜像源:https://mirrors.sjtug.sjtu.edu.cn/anaconda/

清华大学镜像源:https://mirrors.tuna.tsinghua.edu.cn/anaconda/

创建配置文件:

nvim ~/.condarc

如果使用上海交通大学镜像源,将以下配置写入~/.condarc

channels:  - defaultsshow_channel_urls: truechannel_alias: https://anaconda.mirrors.sjtug.sjtu.edu.cndefault_channels:  - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/main  - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/free  - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/mro  - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/r  - https://anaconda.mirrors.sjtug.sjtu.edu.cn/pkgs/msys2custom_channels:  conda-forge: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud/  bioconda: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud/  menpo: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud/  soumith: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud/  viscid-hub: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud/  atztogo: https://anaconda.mirrors.sjtug.sjtu.edu.cn/cloud/

如果使用清华大学镜像源,将以下配置写入~/.bashrc

channels:  - defaultsshow_channel_urls: truechannel_alias: https://mirrors.tuna.tsinghua.edu.cn/anacondadefault_channels:  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2custom_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  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

清除索引缓存,保证用的是镜像站提供的索引:

conda clean -i
卸载Anaconda3

按照官方卸载指导,Anaconda3安装在~/anaconda3文件夹下,首先删除目录

cd ~rm -rf anaconda3

清理.bashrc里的Anaconda环境变量

nvim ~/.bashrcsource ~/.bashrc

清理隐藏文件夹

cd ~rm .condarcrm -rf ~/.condarc ~/.conda ~/.continuum
conda常用命令
关于环境
创建一个名为myenv的环境
conda create -n myenv pip python=3.6

激活myenv环境

source activate myenv

退出环境

source deactivate myenv

删除一个已有的环境

conda deactivate myenv    # for Windowssource deactivate myenv    # for Linux & Mac

查看Anaconda环境

conda info

查看已安装的虚拟环境

conda info -e

或者

conda envs

删除虚拟环境

conda remove -n myenv --all
包管理

安装

对于Python的包,尽可能使用pip安装

pip install packages

pip安装不了的,使用conda

conda install packages # 安装最新版本conda install packsges==xxx # 安装指定版本

查看当前环境下已安装的包

python环境下的包

pip list

conda环境下的包

conda list

查看某一conda环境下的包,比如查看myenv环境下的安装的包:

conda list -n myenv

查找package信息

不同镜像源的包的信息不一样,尽量使用pkgs/main/channels的包

conda search packages

升级conda

conda update conda

卸载某一个环境下的包

在myenv虚拟环境下卸载某一packsges

conda remove -n myenv packages

pip安装

pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。目前如果在 python.org[6] 下载最新版本的安装包,则是已经自带了该工具。 Python 2.7.9 + 或 Python 3.4+ 以上版本都自带 pip 工具。 pip 官网:https://pypi.org/project/pip/
安装

在终端利用SSH登录到服务器系统(CentOS 7.6),由于普通用户无法使用sudo,如果没有安装python,则需手动安装pip,在终端中运行

wget https://bootstrap.pypa.io/get-pip.pypython3 get-pip.py --user

注意:参数--user一定要记得使用,否则会提示权限不足。

安装完成后会在家目录下生成 .local 文件夹,里面有bin文件夹和lib文件夹,加入环境变量

export PATH=~/.local/bin:$PATH

此时已在非root用户环境中安装好通用的Python包管理工具pip

如果系统安装了Python且Python 2.7.9 + 或 Python 3.4+ 以上版本,自带 pip 工具

更换国内镜像源

为了加快下载速度,更换到国内的镜像源:

pip install pip -Upip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
常用命令

显示版本和路径

pip --version

获取帮助

pip --help

升级 pip

pip install -U pip

如果这个升级命令出现问题 ,可以使用以下命令:

sudo easy_install --upgrade pip

安装包

pip install SomePackage              # 最新版本pip install SomePackage==1.0.4       # 指定版本pip install 'SomePackage>=1.0.4'     # 最小版本

比如要安装 Django。用以下的一条命令就可以,方便快捷。

pip install Django==1.7

升级包

pip install --upgrade SomePackage

升级指定的包,通过使用==, >=, <=, >, < 来指定一个版本号。

卸载包

pip uninstall SomePackage

搜索包

pip search SomePackage

显示安装包信息

pip show

查看指定包的详细信息

pip show -f SomePackage

列出已安装的包

pip list

查看可升级的包

pip list -o

注意事项

如果 Python2 和 Python3 同时有 pip,则使用方法如下:

Python2:

python2 -m pip install XXX

Python3:

python3 -m pip install XXX

OpenCV安装

Opencv for Python

首先确保Linux系统安装了Python 3.x,推荐Anaconda[8],激活不同的虚拟环境后,配置基于Python 3.x的Opencv 4.2。

激活对应的虚拟环境,比如我使用了Anaconda创建了一个虚拟环境tensorflow-gpu,激活:

source activate tensorflow-gpu

此时终端会变成如下模样

(tensorflow-gpu) username@devices:~$

即为正常。

上述命令解释

name意义
username用户名
devices主机名
~当前用户主目录
$普通用户
(tensorflow-gpu)系统指定环境

然后使用pip命令进行安装,查找opencv的不同版本(https://pypi.org/project/opencv-python/3.4.9.33/#history),使用下面的命令,替换版本号即可:

pip install opencv-python==3.4.9.33

验证,在虚拟环境中输入

python

输出

Python 3.6.8 |Anaconda, Inc.| (default, Dec 30 2018, 01:22:34) [GCC 7.3.0] on linuxType "help", "copyright", "credits" or "license" for more information.>>>

接着输入

>>> import cv2>>> cv2.__version__'3.4.9'

结果显示Opencv3.4.9,安装正确。

GCC多版本切换*

在CentOS 7下,使用

sudo yum install gcc

CentOS官方的gcc或者g++版本最多到4.8.5,如果要安装Tensorflow 2.0以上的版本,就需要GCC 7.3.1,由于CentOS源没有提供高版本的GCC安装包,这时就不能通过安装包安装,通常的解决方案就是通过编译安装高版本的GCC。在这里介绍如何利用CentOS的新特性SCL进行高版本GCC的安装。

SCL软件集Software Collections)是为了给 RHEL/CentOS 用户提供一种以方便、安全地安装和使用应用程序和运行时环境的多个(而且可能是更新的)版本的方式,同时避免把系统搞乱。

devtoolset和GCC对应关系如下表

devtoolsetGCC版本
devtoolset-34.9.2
devtoolset-45.3.1
devtoolset-66.3.1
devtoolset-77.3.1
devtoolset-88.3.1
添加centos-release-scl包
sudo yum install centos-release-scl
启用RHSCL库
sudo yum-config-manager --enable rhel-server-rhscl-7-rpms
安装GCC

Devtoolset 默认安装到 /opt/rh 目录下

GCC 4.9.2
sudo yum install devtoolset-3
GCC 5.3.1
sudo yum install devtoolset-4
GCC 6.3.1

参考官方链接(https://www.softwarecollections.org/en/scls/rhscl/devtoolset-6/)

sudo yum install devtoolset-6
GCC 7.3.1

参考官方链接(https://www.softwarecollections.org/en/scls/rhscl/devtoolset-7/)

sudo yum install devtoolset-7
GCC 8.3.1

参考官方链接(https://www.softwarecollections.org/en/scls/rhscl/devtoolset-8/)

sudo yum install devtoolset-8

scl-utils 只是方便 Software Collections 使用,比如要查看当前安装了哪些Software Collections,可以使用命令

scl --list
临时生效

假设使GCC 7.3.1生效,其对应devtoolset-7,执行命令

scl enable devtoolset-7 bash

这种方法只对当前的shell环境有效,退出后GCC回退到系统指定的版本。

全局生效

执行下列命令可使对应的GCC全局有效:

ln -s /opt/rh/devtoolset-7/root/usr/bin/* /usr/local/bin/hash -r

测试 gcc 版本

gcc --version

总结

这一部分详细介绍了Anaconda、pip、Opencv、多版本GCC的详细配置,包括每一套软件的下载、安装及校验。本篇文章仅作为参考,如果遇到问题,还请仔细阅读错误信息,利用Google、Stack Overflow等工具一一排除。

本系列第三部分即将推出,届时详细介绍CUDA、cuDNN的切换(重点)、Tensorflow喝PyTorch的安装(详细)、NVim/Vim和Tmux的使用方法(实用)。

1714860de485b8d2deb5f7b9a6be39ff.png

[1] Anaconda官方repo: https://repo.anaconda.com/archive/

[2] Anaconda国内镜像源: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

[3] 上海交通大学镜像源: https://mirrors.sjtug.sjtu.edu.cn/#/

[4] 清华大学镜像源: https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

[5] Anaconda官方卸载指导: https://docs.anaconda.com/anaconda/install/uninstall/

[6] python.org: https://www.python.org/

[7] Pip国内的镜像源: https://mirrors.tuna.tsinghua.edu.cn/help/pypi/

[8] opencv的不同版本: https://pypi.org/project/opencv-python/3.4.9.33/#history

[9] SCL软件集: https://www.softwarecollections.org/en/scls/user/rhscl/

bd13e1c3cd68fd3b6446e31a20d73933.png 94e3151a7aeea612a39bb24be9111bc9.png bf6b50abbd670d1780835467109597af.png诚信经营扫码关注微信我们一起摆摊摊
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值