Miniconda 安装和使用笔记

Miniconda是Anaconda的简化版, 可以管理多个Python版本的环境. 实际使用的话, 占用的空间不会很小, 我跑一些正常的应用后, 安装目录占用空间4.3GB, 安装建议要预留10到20G的空间.

安装 Miniconda

下载安装包

  • https://docs.anaconda.com/free/miniconda/
  • 历史版本 https://repo.anaconda.com/miniconda/

在里面下载适合自己操作系统的安装包, 对于X64的Ubuntu, 下载的是 Miniconda3-latest-Linux-x86_64.sh

chmod后执行

chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh

或者直接用bash执行

bash Miniconda3-latest-Linux-x86_64.sh

中间会有一些提示, 按提示安装. 最后一步要启动自动设置环境, 选no

启用conda环境

启动 conda 环境时需要用下面的命令

eval "$(/install-path/bin/conda shell.YOUR_SHELL_NAME hook)"

我的环境时bash, 命令就是

eval "$(/home/milton/miniconda3/bin/conda shell.bash hook)"

启用后console的提示符前面会增加(base), 可以用conda --verion验证一下是否生效

(base) milton@somewhere:~$ conda --version
conda 23.11.0

用info查看环境信息

(base) milton@somewhere:~$ conda infoactive environment : baseactive env location : /home/milton/miniconda3shell level : 1user config file : /home/milton/.condarcpopulated config files : conda version : 23.11.0conda-build version : not installedpython version : 3.11.5.final.0solver : libmamba (default)virtual packages : __archspec=1=haswell__conda=23.11.0=0__glibc=2.35=0__linux=6.5.0=0__unix=0=0base environment : /home/milton/miniconda3  (writable)conda av data dir : /home/milton/miniconda3/etc/condaconda av metadata url : Nonechannel URLs : https://repo.anaconda.com/pkgs/main/linux-64https://repo.anaconda.com/pkgs/main/noarchhttps://repo.anaconda.com/pkgs/r/linux-64https://repo.anaconda.com/pkgs/r/noarchpackage cache : /home/milton/miniconda3/pkgs/home/milton/.conda/pkgsenvs directories : /home/milton/miniconda3/envs/home/milton/.conda/envsplatform : linux-64user-agent : conda/23.11.0 requests/2.31.0 CPython/3.11.5 Linux/6.5.0-15-generic ubuntu/22.04.3 glibc/2.35 solver/libmamba conda-libmamba-solver/23.12.0 libmambapy/1.5.3UID:GID : 1000:1000netrc file : Noneoffline mode : False

关于这个eval和hook的说明

https://askubuntu.com/questions/1254371/can-anyone-explain-what-this-command-actually-do-eval-users-jsmith-anaconda

eval "$(shell-command)" will run shell-command and feed its output to the shell as a command to execute.
A hook in this context is a mechanism to attach custom actions to some event processed by a software.
so $CONDA_PATH/bin/conda shell.bash hook will probably generate a bash command line which, when executed, will connect Anaconda into the running bash process, and eval "$($CONDA_PATH/bin/conda shell.bash hook)" will take care of executing that command. Try running $CONDA_PATH/bin/conda shell.bash hook directly from a shell prompt to see what it is producing, in order to better understand what is going on.

直接运行这个会打印出eval将会执行的脚本

/home/milton/miniconda3/bin/conda shell.bash hook

关于 conda 环境的启用和关闭

启用conda环境实际上涉及到两部分, 一个是将conda加入环境变量, 另一个是启用conda的虚拟python环境,
前者在执行eval后就一直有效, 直到你退出当前的命令行, 查看 $PATH 可以看到加入了两个目录 miniconda3/bin 和 miniconda3/condabin

$ echo $PATH
/home/milton/miniconda3/bin:/home/milton/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

后者可以用 activate 和 deactivate 来启用和关闭

# 关闭
(base) milton@somewhere:~$ conda deactivate
# 关闭后 (base) 消失, 但是 conda 命令还是可用的
milton@somewhere:~$ conda --version
conda 23.11.0
# 再次启用, 可以看到 (base) 又出现了
milton@somewhere:~$ conda activate
(base) milton@somewhere:~$ 

在 conda 环境下, 用的 python 版本是独立的, 和系统的 python 版本不一样

milton@somewhere:~$ python3 --version
Python 3.10.12milton@somewhere:~$ conda activate
(base) milton@somewhere:~$ python3 --version
Python 3.11.5

conda环境管理

查看环境列表

这三个命令是一样的, 当前环境会用星号标识

conda info -e
conda info --envs
conda env list

创建环境

先deactivate关闭当前环境, 然后执行

conda create --name [env_name] python=[version]
# 或者
conda create -n [env_name] python=[version]# 例如
conda create --name test3.6 python=3.6

会计算依赖然后提示需要下载按照的包列表, 安装结束后会提示启用命令

conda activate test3.6
# To deactivate an active environment, use
conda deactivate

启用后查看对应的python版本就变成了3.6

conda activate test3.6
(test3.6) milton@somewhere:~$ python --version
Python 3.6.13 :: Anaconda, Inc.

删除环境

conda env remove -n test3.6
conda remove -n test3.6 --all

conda 管理

升级

conda update --all

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/692501.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Discuz! X收藏列表页调用封面图片详细教程

Discuz! X默认收藏列表不显示封面图,我们接到客户需求要开发封面图功能在帖子列表,这是我们整理好的详细教程,下载即可查看 修改后,显示封面的收藏列表截图: 详细开发教程下载地址:Discuz! X收藏列表页调用…

【9】知识存储

一、图数据库neo4j Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎。单节点的服务器可承载上亿级的节点和关系,单节点性能不够时也可进行分布式集群部…

提升认知水平和防止偏见浅谈

提升认知水平和防止偏见浅谈 《庄子外物》:井蛙不可语海,夏虫不可语冰。 不要跟井底的青蛙谈论大海,因为它的认知只有井底那么大,大海对于它来说是认知盲区;不要与夏虫去谈论冰雪,因为夏虫一生很短没有经历…

5. D. In Love(贪心)

题目链接 D. In Love 题意 线段的集合,有两种操作 插入一个线段删除一个线段 每次操作后都要去查询是否存在两个线段不相交 题解 首先先看两个线段不相交需要满足什么条件 也就是较 大 l > 小 r 大l>小r 大l>小r即可满足不相交 我们进行推广 当集合…

big three(c++)

"Big Three"是指在C类中需要手动实现的三个特殊成员函数,分别是拷贝构造函数(Copy Constructor)、拷贝赋值运算符(Copy Assignment Operator)和析构函数(Destructor)。这三个函数通常…

手撕qsort函数

前言 本篇主要讲解的是qsort函数细节以及运用实例。 紧跟我的脚步一起手撕qsort函数吧~ 欢迎关注​​个人主页:逸狼 更多优质内容: 拿捏c语言指针(上) 拿捏c语言指针(中) 拿捏c语言指针(下&…

【数据结构/c++】求解有向无环图DAG的关键路径

#include<cstring>//memset头文件 #include<algorithm>//fill头文件 #include<vector> #include<stdio.h> #include<stack> #include<queue> using namespace std; const int MAXV510; struct Node{int v,w;Node(int _v,int _w):v(_v),…

超详细的总结!大模型算法岗面试题(含答案)来了!

文章目录 技术交流一、基础篇二、大模型&#xff08;LLMs&#xff09;进阶三、大模型&#xff08;LLMs&#xff09;LangChain四、大模型分布式训练五、大模型&#xff08;LLMs&#xff09;推理用通俗易懂的方式讲解系列 大模型应该是目前当之无愧的最有影响力的AI技术&#xff…

学习 Kubernetes(K8s)、常用命令

学习 Kubernetes&#xff08;K8s&#xff09;是现代云原生应用开发和部署的关键&#xff0c;它提供了一种灵活的、自动化的方式来管理容器化的应用程序。下面是学习 Kubernetes 和一些常见命令的建议&#xff1a; 学习 Kubernetes 官方文档&#xff1a;Kubernetes官方文档是学…

【Langchain】+ 【baichuan】实现领域知识库【RAG】问答系统

本项目使用Langchain 和 baichuan 大模型&#xff0c; 结合领域百科词条数据&#xff08;用xlsx保存&#xff09;&#xff0c;简单地实现了领域百科问答实现。 from langchain.text_splitter import CharacterTextSplitter, RecursiveCharacterTextSplitter from langchain_co…

2023年便宜的云服务器分享:最低26元4核16G

2024年阿里云服务器租用价格表更新&#xff0c;云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年&#xff0c;轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服…

嵌入式学习第十九天!(时间获取、文件属性和权限的获取、软链接和硬链接)

时间获取&#xff1a; 1. time time_t time(time_t *tloc); 功能&#xff1a;返回1970-01-01到现在的秒数&#xff08;格林威治时间&#xff09; 参数&#xff1a; tloc:存放秒数空间首地址 返回值: 成功返回秒数 失败返回-1 2. localtime struct tm *localtime(const tim…

python celery使用队列

在celery的配置方法中有个参数叫task_routes&#xff0c;是用来设置不同的任务 消费不同的队列&#xff08;也就是路由&#xff09;。 格式如下&#xff1a; { ‘task name’: { ‘queue’: ‘queue name’ }}直接上代码&#xff0c;简单明了&#xff0c;目录格式如下&#x…

阿里云服务器“镜像”全方面解析

阿里云服务器镜像怎么选择&#xff1f;云服务器操作系统镜像分为Linux和Windows两大类&#xff0c;Linux可以选择Alibaba Cloud Linux&#xff0c;Windows可以选择Windows Server 2022数据中心版64位中文版&#xff0c;阿里云服务器网aliyunfuwuqi.com来详细说下阿里云服务器操…

day37打卡

day37打卡 738. 单调递增的数字 解法&#xff0c;贪心&#xff1a; 从后向前遍历&#xff0c;找出并记录最终递减的位置&#xff0c;把当前减1&#xff0c;再把后面的全置为9即可。 举个例子&#xff0c;数字&#xff1a;332&#xff0c;从前向后遍历的话&#xff0c;那么就…

【触想智能】国产工控机五大分类你知道吗?

工控机是专门为工业控制设计&#xff0c;用于对生产过程中使用的机器设备、生产流程、数据参数等进行监测与控制的计算机。由于工控机经常会在恶劣的环境下运行&#xff0c;对数据的安全性要求也比较高&#xff0c;因此需要单独定制才能满足需求。 在现代化工业生产过程中&…

时间获取和文件属性和权限获取实现 ‘ls -l’ 功能

一&#xff0c;时间获取: 1.time time_t time(time_t *tloc); 功能: 返回1970-1-1到现在的秒数&#xff08;格林威治时间&#xff09; 参数: tloc:存放秒数空间首地址 返回值: 成功返回秒数&#xff08;用 time_t 类型的变量接&…

不确定性问题的论文笔记

Statistics starting from 01/2024, 仅列出了优秀工作中的一部分 每一年的排列顺序: CVPR, ICLR, ECCV, ICCV, ICML, AAAI, TPAMI&#xff0c;TIP&#xff0c;Arxiv 等 每周更新 2024 论文信息速览笔记是 否 已精读精读笔记Shao W, Xu Y, Peng L, et al. Failure Detection fo…

打开一个网站所经历的过程

浏览器查找网址&#xff08;URL&#xff09;对应的服务器的IP地址&#xff1a; 当你在浏览器输入一个网址&#xff0c;计算机需要知道这个网址对应哪台服务器&#xff0c;所以要先查找这个网址对应的 IP 地址。这一步是通过 DNS&#xff08;域名系统&#xff09;完成的&#xf…

从零学算法240

240.编写一个高效的算法来搜索 m x n 矩阵 matrix 中的一个目标值 target 。该矩阵具有以下特性&#xff1a; 每行的元素从左到右升序排列。 每列的元素从上到下升序排列。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,4,7,11,15],[2,5,8,12,19],[3,6,9,16,22],[10,13,14,…