极市导读
本文总结了一系列关于Anaconda的环境管理和相关报的操作,附有详细代码及步骤。 >>加入极市CV技术交流群,走在计算机视觉的最前沿
Anaconda是一个用于集成包和环境的管理工具,致力于简化软件管理系统和部署。此外我们还可以利用conda指令对虚拟环境进行方便的创建、激活、删除、退出和配置。pip 则是Python 包的管理工具,提供了对Python 包的查找、下载、安装、卸载的功能。
由于笔者在日常的开发使用过程中,时不时会碰到对一些环境的管理和相关包的一些操作,然而网络上充斥着大量老旧且无效解决方案的博客,有时甚至会使原本已经配置好的炼丹装置毁于一旦,俗称“坑爹”。以下方案均经过笔者的有效验证,可放心使用。
Windows系统直接从官网下载安装即可,记得将路径添加到环境变量中去,或者安装时候选择“Add to path”。
Linux或OS系统,下到火狐浏览器安装下相应的文件,进入到指定目录,执行以下指令即可:
下载的conda版本有所不同,按需下载
bash Anaconda3-xxx.xx-Linux-x86_64.sh
Windows系统:
Ctrl+S → 搜索控制面板 → 程序卸载 → 右键移除
Linux或OS系统:
rm -rf ~/miniconda 或者 rm -rf ~/anaconda
Linux系统下:
scp -r username@ip_address:/home/username/anaconda3/envs/$env_name ~/
以上指令能够实现将某台服务器下的虚拟环境复制到另一台服务器上当前位置下,其中:
username:用户名,cvhub
ip_address:ip地址,172.31.20.xx
env_name:所要复制的虚拟环境名称
以上变量可依照自己的实际环境进行相应的替换即可。
conda create -n cvhub python=3.8 -y
上述指令创建了一个名称为cvhub,python版本号为3.8的虚拟环境,-y表示遵循默认配置,后面无需再次确认。注意,在安装时如没有必要尽量不要选择最新的python版本号,以确保后续配置或安装包不会出现python版本不支持的现象。
conda activate $pkg_name
$pkg_name为你所创建的环境名,此处为cvhub。(下同)
注:Linux系统下如果没配置好./bashrc,会导致conda指令失效,可使用以下临时指令激活:
source ~/.bashrc
source activate $pkg_name
conda deactivate
退出环境时无需增加扩展名,默认退出当前环境。
conda remove -n $pkg_name --all -y
需要注意的是这里--all参数是必加的。
通常来说,当我们使用conda指令下载安装包时会默认使用conda源下载。但是,由于xx不可描述的因素影响,会导致安装包的下载速度极其缓慢,甚至会经常出现下载中断的现象。我想这对于绝大多数刚入门的新手应该不陌生,你是其中一个吗?^_^
一个比较好的解决方案便是加载国内的镜像源,这样可以避免这种问题,下面首先列举出国内几个比较常用的镜像源:
http://mirrors.aliyun.com/pypi/simple/ # 阿里云
https://pypi.mirrors.ustc.edu.cn/simple/ # 中国科技大学
http://pypi.douban.com/simple/ # 豆瓣(douban)
https://pypi.tuna.tsinghua.edu.cn/simple/ # 清华大学
http://pypi.mirrors.ustc.edu.cn/simple/ # 中国科学技术大学
当然,因为一些xx因素,这些源有时候会被关闭,至于能不能用关键还是看运气了。下面梳理下一些常用的指令。
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 --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
最后一行是用于显示下载的通道源。以pytorch下载和按照为例,我们应该先到对应源的网站上去查看是否有相应的镜像链接。比如清华源中pytorch网站为这个[1],进入后我们可以根据我们的操作系统选择点击进入查看是否有我们所需要的版本号。当然,我们在使用pytorch官方指令安装的时候要注意去掉 -c ,这个加上去会使用默认的conda源。
而在Linux系统下,可以尝试修改以下配置文件,然后将里面的channels按照上面所示的镜像源地址添加进去即可:
sudo gedit ~/.condarc
conda config --show # 显示当前配置状态
conda config --get channels # 查看当前配置状态
敲定第一行指令会打印一些列信息,我们需要找到"channels"这个关键字下的信息进行查看。
# 删除当前的镜像源
conda config --remove channels https://pypi.mirrors.ustc.edu.cn/simple/
# 移除所有镜像源
conda config --remove-key channels
conda -h # 通过使用帮助指令,可以对其他指令功能一目了然
conda --version # 查看当前的conda版本
conda list # 查看当前已安装包
conda install $pkg_name # 安装包
conda uninstall $pkg_name # 卸载包
conda info --envs # 显示当前以创建的虚拟环境
conda update conda # 检查并更新到conda最新版本
conda update --all # 更新所有的安装包
conda update python # 将python更新至最新版本
conda remove --name $pkg_name # 删除当前虚拟环境下的某个包
conda remove --name $env_name $pkg_name # 删除某个虚拟环境下的某个包
conda env export -n $env_name -f $env_name.yml # 将配置导出为yml文件
conda env upload -f $env_name.yml # 上传yml文件
conda create -n $env_name -clone $cp_env_name # 复制当前虚拟环境
conda search $pkg_name # 搜索某个包的信息
conda clean -p # 清理没有使用过的包
conda list -e > requirements.txt # 将当前虚拟环境下的所有包进行导出
pip install --upgrade pip
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
pip config unset global.index-url
pip config list
pip config list
pip install $pkg_name -i http://pypi.douban.com/simple # 临时使用指定镜像源安装包,可自行更改
如报不受信任的错,可添加以下指令解决:
pip install -U scikit-learn -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
如果想要一次性设置,Linux下,可以修改 ~/.pip/pip.conf 文件,若不存在则手动创建:
# vim ~/.pip/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn
Windows系统下则在当前系统用户目录下创建一个pip文件夹,如C:\Users\Administrator\pip,然后在当前目录下创建并编辑pip.ini文件:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn
这里的镜像源可根据需要自行修改。除此之外,我们还可以在Pycharm下进行设置:
File → Settings → Project:Name → Project Interpreter → ‘+’ 添加模块 → Manage Repositories → 将相应镜像源添加进去。
pip freeze > requirements.txt
pip install -r requirements.txt
cls
conda config --remove-key channels
conda update conda
conda update --all
conda config --add channels conda-forge
conda config --set channel_priority flexible
CVHub团队热衷于输出高质量的原创干货文章,每一篇文章均经过我们的精雕细琢,致力于为读者烹饪更加美味的CV技术佳肴。如果这篇文章能够帮助到你,请不要吝惜你的互动,一键三连即可。你的点赞和转发便是对我们最大的鼓励,日后必将写出更加精彩和高质量的文章回馈给读者。
[1]https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/: t
如果觉得有用,就请分享到朋友圈吧!
公众号后台回复“CVPR21检测”获取CVPR2021目标检测论文下载~
# CV技术社群邀请函 #
备注:姓名-学校/公司-研究方向-城市(如:小极-北大-目标检测-深圳)
即可申请加入极市目标检测/图像分割/工业检测/人脸/医学影像/3D/SLAM/自动驾驶/超分辨率/姿态估计/ReID/GAN/图像增强/OCR/视频理解等技术交流群
每月大咖直播分享、真实项目需求对接、求职内推、算法竞赛、干货资讯汇总、与 10000+来自港科大、北大、清华、中科院、CMU、腾讯、百度等名校名企视觉开发者互动交流~