Conda/Miniconda/Anaconda 安装教程及常用命令整理指南
# Conda/Miniconda/Anaconda 介绍
1. Conda/Miniconda/Anaconda 之间的关系
Conda: 你可以从官方文档找到对Conda的介绍, Conda是一个适用于任何语言的软件包/依赖项/环境管理工具, 而不仅仅是python的包/环境管理工具. Conda可以让用户更轻松方便的安装/运行/更新软件包, 方便的创建/保存/加载/切换虚拟环境.
Anaconda/Miniconda是打包好的Conda安装程序, 可以帮你一键安装 Python + Conda + 一些软件包, 不同之处在于Anaconda同时打包了1500个常用的软件包, 可以一次性安装到你到python环境中, 这样你就不用再一个个安装软件包了, 对新手非常友好. 而Miniconda一个最小的python+conda安装程序, 只包含了最必要的包.
2. 我该选择Anaconda还是Miniconda?
如果你是新手, 不要犹豫, 请直接安装Anaconda, 这样你就不需要在环境配置上花费太多时间, 安装即用, 专心把精力花在python学习上吧. 当然, 因为Anaconda附带了大量的库, 所以Anaconda安装过程会比较久, 安装后也会占用较大的空间(几个G), 但请相信, 安装过程的时间成本相比自行配置安装环境的成本要低多了.
如果你使用Anaconda已经有一段时间了, 对conda的命令都已经熟悉, 那就可以试一下Miniconda了, 只安装自己需要的包. 此外在一些需要部署的场合, 安装几个G的Anaconda也是不现实的, 并且很多库都用不上, 此时使用Miniconda就是一个更合适的选择.
3. 为什么要切换虚拟环境呢? 只用一个环境不行吗?
不行的, python的软件包数量众多, 版本更新迅速, 但不同包以及不同版本的包对其他软件包的依赖情况可能不同. 所以在不同的项目中我们可能需要给项目配置不同的环境, 比方说有的项目要在python2.7下运行, 有些要在python3.6, 有的要使用opencv3, 有的要使用opencv4. 因此我们需要一个工具能帮我们方便的创建/管理虚拟环境, 于是Conda应运而生, 成为在这方面最流行的一个工具.
Ubuntu快速安装miniconda
1. 下载加安装
在想要安装的miniconda的文件夹下输入以下命令:
mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm -rf ~/miniconda3/miniconda.sh
以上命令来自官方Miniconda — Anaconda documentation,亲测有效且快速~(官方命令真的神,不用一直回车什么的,参数都传进去了
2.初始化conda
~/miniconda3/bin/conda init bash
~/miniconda3/bin/conda init zsh
重启终端出现(base)
3.配置清华源镜像
# conda 添加国内源
方法一:
添加国内源/通道, 默认源在国外, 国内访问较慢, 建议添加国内源, 下载更新能节省很多时间, 以下为清华的源, 比较常用
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
方法二:
如果是普通用户 :
cd /home/yourUserName
如果是root用户:
cd /root
然后
vim .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
deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/
退出编辑,输入命令,即可添加 Anaconda Python 免费仓库。
运行
conda clean -i
清除索引缓存,保证用的是镜像站提供的索引。运行
conda create -n myenv numpy
以上参考:
anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
# 设置安装时显示源地址, 方便安装时知道包来自哪个源
conda config --set show_channel_urls yes
# Conda 常用命令
# 查看 conda 版本信息 conda info # 更新 conda 版本 conda update -n base conda创建虚拟环境:
conda create -n python311 python=3.11
进入虚拟环境:
conda activate python311
conda 其它命令:
#创建虚拟环境 conda create -n your_env_name python=X.X(3.6、3.7等) #激活虚拟环境 source activate your_env_name(虚拟环境名称) #退出虚拟环境 source deactivate your_env_name(虚拟环境名称) #删除虚拟环境 conda remove -n your_env_name(虚拟环境名称) --all #查看安装了哪些包 conda list #安装包 conda install package_name(包名) conda install scrapy==1.3 # 安装指定版本的包 conda install -n 环境名 包名 # 在conda指定的某个环境中安装包 #查看当前存在哪些虚拟环境 conda env list #或 conda info -e #或 conda info --envs #检查更新当前conda conda update conda #更新anaconda conda update anaconda #更新所有库 conda update --all #更新python conda update python
# conda 环境相关, 新建/激活/切换/删除
# 列出所有环境 conda env list# 新建环境 # 新建一个名为 ENVNAME 的python版本为3.6的 conda create --name ENVNAME python=3.6 # 这里 --name 可以缩写为 -n,所以下面这个用法更常用, 下文同样会使用这种缩写方式,查看所有的缩写 conda create -n ENVNAME python=3.6 # 也可在创建环境的同时安装一些包,也可以同时指定包的版本, 如 conda create -n ENVNAME python=3.7 numpy=1.16.4 matplotlib # 激活/切换环境# 激活名为 ENVNAME 的环境 conda activate ENVNAME # 激活特定路径的环境,笔者注: 这个命令偶尔会用 conda activate /path/to/environment-dir # 关闭当前环境,笔者注: 如果不在继续使用此命令行窗口,直接关闭该窗口静即可 # 关闭环境后面不需要指定环境名,默认关闭当前环境 conda deactivate # 删除环境, 笔者注: 也可以直接删掉 anaconda 安装目录下 envs 里面的对应文件夹 conda remove -n ENVNAME --all# 复制环境, 笔者注: 不可通过复制 anaconda 安装目录下 envs 下的文件夹来复制环境, 因为这样的操作不会自己改变此环境里的配置信息, 对复制后的环境的操作会影响到原环境 # 复制 ENVNAME1, 新环境命名为 ENVNAME2conda create -n ENVNAME2 --clone ENVNAME1 # 重命名, 目前没有直接重命名的命令, 需要先 clone 再 remove 旧环境conda create -n ENVNAME2 --clone ENVNAME1conda remove -n ENVNAME1 --all
# 包管理相关
# 列出当前环境已安装的所有包 conda list # 列出指定环境的所有包 conda list -n ENVNAME # 列出当前环境变化的版本历史, 笔者注: 这个版本记录类似与git的记录, 记录你每次的包管理操作后环境记录 # 笔者注: 这个命令关键时候可以救命, 比方说你手贱升级了某个环境, 发现有问题想回滚到之前的环境状态时 conda list --revisions # 同上, 列出指定环境的包管理变化的版本历史 conda list --name ENVNAME --revisions # 结合上面两个命令使用, 先通过上面的命令列出所有版本, 然后通过下面这个命令会退到某个版本 conda install -n ENVNAME --revision REV_NUMBER # 删除某个环境, 还有一个比较暴力的方式就是直接删除anaconda安装路径下的 envs/ENVNAME 文件夹 conda remove -n ENVNAME --all
# 环境共享相关
# 复制指定环境 conda create --clone ENVNAME --name NEWENV # 导出指定环境到YAML文件 (便于在另一台电脑上导入以恢复同样的环境) conda env export --name ENVNAME > envname.yml # 从YAML文件创建环境 conda env create --file envname.yml # 如果当前目录下有 environment.yml 文件, 也不输入文件名直接创建环境,如下: conda env create # 导出当前环境的包版本列表 conda list --explicit > pkgs.txt #或者使用下面命令导出更简单的包列表 conda list -e > pkgs.txt # 基于包版本清单创建环境 conda create --name NEWENV --file pkgs.txt
# Packages(包)和Channels(源/通道)的使用
# 添加 Channels conda config --add channels CHANNELNAME # 使用conda从已配置的Channels中搜索包, 可以带上版本号, 笔者注: 用得少, 图形界面的系统下, 可以直接百度/google搜索更方便一点 conda search numpy=1.16 # 使用anaconda从所有Channels中搜索包 anaconda search FUZZYNAME # 从指定通道安装包,如 conda install conda-forge::PKGNAME # 安装指定版本的包,一个等号或2个等号均可 conda install PKGNAME==3.1.4 # 卸载当前环境的某个包 conda uninstall PKGNAME # 卸载指定环境的某个包 conda uninstall -n ENVNAME PKGNAME # 升级环境的所有包, 同样可以指定环境 conda update --all -n ENVNAME# 升级某个包, 同样可以通过 -n ENVNAME 指定环境conda update PKGNAME
# 其他有用的命令
# 搜索包时加上 --info, 可以输出包的详细信息 conda search PKGNAME --info # 清理不用的缓存和包, 有时可以轻轻松松清理出几个G, 但如果不是硬盘空间特别有限的情况, 建议不用清理, 因为安装包如果缓存中有这个包就不用重新下载了 conda clean --all # 安装包且输出命令提示,也就是直接安装不需要确认, 再写自动运行的脚本时会很有用 conda install --yes PKG1 PKG2 # 输出conda的配置 conda config --show
本文整理与以下链接:
https://www.cnblogs.com/HELO-K/p/11519988.html
Ubuntu快速安装miniconda_ubuntu miniconda-CSDN博客
ubuntu-conda-gpu-安装xinference – 代号尚行
Miniconda — Anaconda documentation
作者:BingGO35