当前位置: 首页 > news >正文

Anaconda在Ubuntu下的安装与简单使用

一、参考资料

ubuntu16.04下安装&配置anaconda+tensorflow新手教程

二、安装Anaconda

  1. 下载 Miniconda镜像1 or Miniconda镜像2

    # 下载
    wget Miniconda3-py39_4.10.3-Linux-x86_64.sh# 安装
    bash Miniconda3-py39_4.10.3-Linux-x86_64.sh
    

    一路yes

  2. 安装过程中的选项

    Do you accept the license terms? [yes|no]
    >>> yesAnaconda3 will now be installed into this location:
    /home/yichao/anaconda3
    >>> 回车If you'd prefer that conda's base environment not be activated on startup, set the auto_activate_base parameter to false: conda config --set auto_activate_base false
    
  3. 取消base为默认虚拟环境

    conda config --set auto_activate_base false
    
  4. 设置环境变量
    如果自动设置环境变量,则需要手动设置环境变量。

    vim ~/.bashrc# 添加下面两行
    export PATH="/home/username/miniconda3/bin:$PATH"
    export PATH="/home/username/miniconda3/condabin:$PATH"# 重新加载当前用户配置文件
    source ~/.bashrc
    
  5. Anaconda换源

    Anaconda换源
    anaconda | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror!

    sudo gedit ~/.condarc# 清空缓存
    conda clean -i# 安装测试
    conda create -n myenv numpy
    
    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/cloudmsys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
    
  6. 切换Python版本

    # 打开配置文件
    vim ~/.bashrc# 添加配置
    alias python="/usr/bin/python"
    alias python3="/usr/local/bin/python3"
    alias pyana="/home/yoyo/anaconda3/bin/python3"# 更新配置
    source ~/.bashrc
    
  7. 卸载Anaconda

    # 删除anaconda相关文件夹
    rm -rf ~/miniconda3
    rm -rf ~/anaconda3
    rm -rf ~/.conda
    rm -rf ~/.condarc
    rm -rf ~/.anaconda# 删除环境变量
    # 删除关于conda部分的环境变量
    vi ~/.bashrc# 更新环境变量
    source ~/.bashrc
    

三、Anaconda的常用指令

# 1. 创建虚拟环境
conda create -n your_env_name python=X.X(2.7、3.6等)# 1.1 在指定的位置创建虚拟环境
conda create -p /PATH/TO/path# 查看所有的conda虚拟环境
conda env list   # 2. 激活虚拟环境
source activate your_env_name(虚拟环境名称)# 3. 退出虚拟环境
source deactivate your_env_name(虚拟环境名称)# 4. 删除虚拟环境
conda remove -n your_env_name(虚拟环境名称) --all# 5. 安装包
conda install package_name(包名)
conda install scrapy==1.3 # 安装指定版本的包
conda install -n 环境名 包名 # 在conda指定的某个环境中安装包# 6. 跳过安装失败的包,继续安装
conda方式
while read requirement; do conda install --yes $requirement; done < requirements.txtpip方式
while read requirement; do conda install --yes $requirement || pip install $requirement; done < requirements.txt
  1. 查看

    # 1. 查看安装了哪些包
    conda list# 2. 查看conda配置
    conda config --show# 3. 查看当前存在哪些虚拟环境
    conda env list 
    或 conda info -e
    或 conda info --envs
    
  2. 更新

    # 1. 检查更新当前conda
    conda update conda# 2. 更新anaconda
    conda update anaconda# 3. 更新所有库
    conda update --all# 4. 更新python
    conda update python
    
  3. 清理conda缓存(conda报错segment fault的时候就是需要清理缓存哦)

    conda clean -p      //删除没有用的包
    conda clean -t      //删除tar包
    conda clean -y --all //删除所有的安装包及cache
    

四、Anaconda的使用技巧

conda环境的复制(生成.yaml文件)和pip环境的复制(生成requirements.txt)

  1. 克隆环境

    # 克隆一个BBB,环境和Tensorflow一样
    conda create -n BBB --clone Tensorflow 
    
  2. 克隆环境(跨计算机)

    # 跨计算机克隆
    # 目标计算机的环境目录 /PATH/TO/home/yoyo/miniconda3/envs/monodepth2-gpu 
    conda create -n BBB --clone /PATH/TO/home/yoyo/miniconda3/envs/monodepth2-gpu 
    
  3. 导入/导出环境

    # 导出环境到yaml文件
    conda env export > env.yaml# 根据yaml文件复现环境
    conda env create -f env.yaml
    

注意.yaml 文件移植过来的环境只安装了原来环境里用 conda install 等命令直接安装的包,使用pip安装的软件包没有移植过来,需要重新安装。

# 导出安装包
pip freeze > requirements.txt# 安装
pip install -r requirements.txt 
或者
conda install --yes --file requirements.txt
  1. 打包/解包(跨计算机)

    # 将环境打包
    tar cvf monodepth2-gpu.tar envirement# monodepth2-gpu.tar文件,通过http、ssh等方式拷贝到目标计算机
    rsync -rzP */envirement.tar /home/yoyo/anaconda3/envs# 解包
    tar xvf monodepth2-gpu.tar# 修改conda的环境配置文件 ~/.conda/envirement.txt,在尾部添加拷贝的环境目录
    /home/yoyo/miniconda3/envs/monodepth2-gpu
    
  2. 搜索包

    # 在anaconda官方仓库中搜索包(可能失效)
    anaconda search tensorflow-gpu -t conda  #搜包[tensorflow-gpu]# 在清华源镜像中搜索包
    conda search tensorflow-gpu# 模糊查询
    conda search *scikit*
    或者
    conda search '*scikit*'# 显示包详细信息(可能失效)
    anaconda show aaronszs/tensorflow-gpu  #查询第二条[aaronszs/tensorflow-gpu]
    
    # 启动Anaconda Navigator 图形化界面
    anaconda-navigator# 导入anaconda所有库
    conda install anaconda
    

五、FAQ

anaconda 环境新建/删除/拷贝 jupyter notebook上使用python虚拟环境 TensorFlow

Anaconda 换国内源、删源最全集锦

在anaconda中安装不存在的python包并安装到指定环境中

【转】conda install和创建虚拟环境下载慢 pip下载慢 有用

TensorFlow+Faster-RCNN+Ubuntu 环境配置&代码运行过程

Q:根据yaml文件复现环境错误

Collecting package metadata (repodata.json): done
Solving environment: failedResolvePackageNotFound: - wincertstore==0.2=py36h7fe50ca_0- jbig==2.1=h8d14728_2003- libdeflate==1.7=h8ffe710_5- zstd==1.5.0=h6255e5f_0- lz4-c==1.9.3=h8ffe710_1- lerc==2.2.1=h0e60522_0- libtiff==4.3.0=h0c97f57_1- jpeg==9d=h8ffe710_0- mkl==2021.3.0=hb70f87d_564- setuptools==52.0.0=py36haa95532_0- tbb==2021.3.0=h2d74725_0- certifi==2021.5.30=py36haa95532_0- vc==14.2=h21ff451_1- python==3.6.6=hea74fb7_0- zlib==1.2.11=h62dcd97_1010- numpy==1.19.5=py36h4b40d73_2- pip==21.2.2=py36haa95532_0- libpng==1.6.37=h1d00b33_2- opencv==3.3.1=py36h20b85fd_1- vs2015_runtime==14.27.29016=h5e58377_2- intel-openmp==2021.3.0=h57928b3_3372- xz==5.2.5=h62dcd97_1

Q:根据yaml文件复现环境错误

Collecting package metadata (repodata.json): done
Solving environment: failedResolvePackageNotFound: - wincertstore=0.2- vc=14.2- vs2015_runtime=14.27.29016
# 错误原因
找不到相关的包# 解决办法
注释对应的行

Q:NotWritableError: The current user does not have write permissions to a required path.

conda创建环境时报错:NotWritableError: The current user does not have write permissions to a required path.

tx2@tx2:~$ conda create -n efficientdet python=3.7
Solving environment: failedNotWritableError: The current user does not have write permissions to a required path.path: /home/tx2/archiconda3/pkgs/urls.txtuid: 1000gid: 1000If you feel that permissions on this path are set incorrectly, you can manually
change them by executing$ sudo chown 1000:1000 /home/tx2/archiconda3/pkgs/urls.txtIn general, it's not advisable to use 'sudo conda'.‵
# 错误原因
用户没有对anaconda3文件夹的读写权限,造成其原因可能是由于在安装anaconda时使用了管理员权限。# 解决办法
cd /home/tx2
sudo chown tx2:tx2 -R archiconda3

Q:subprocess.CalledProcessError: Command 'lsb_release -a' returned non-zero exit status 1.

subprocess.CalledProcessError: Command ‘(‘lsb_release’, ‘-a’)’ returned non-zero exit status 1.

(mslite) liulinjun@LAPTOP-4DTD5D42:~/MyDocuments/mindspore$ conda info --envs# >>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<<<<<Traceback (most recent call last):File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/exceptions.py", line 1079, in __call__return func(*args, **kwargs)File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/cli/main.py", line 84, in _mainexit_code = do_call(args, p)File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/cli/conda_argparse.py", line 83, in do_callreturn getattr(module, func_name)(args, parser)File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/cli/main_info.py", line 316, in executeinfo_dict = get_info_dict(args.system)File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/cli/main_info.py", line 135, in get_info_dict_supplement_index_with_system(virtual_pkg_index)File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/core/index.py", line 163, in _supplement_index_with_systemdist_name, dist_version = context.os_distribution_name_versionFile "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/_vendor/auxlib/decorators.py", line 268, in new_fgetcache[inner_attname] = func(self)File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/base/context.py", line 786, in os_distribution_name_versionfrom .._vendor.distro import id, versionFile "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/_vendor/distro.py", line 1084, in <module>_distro = LinuxDistribution()File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/_vendor/distro.py", line 599, in __init__self._lsb_release_info = self._get_lsb_release_info() \File "/home/liulinjun/miniconda3/lib/python3.9/site-packages/conda/_vendor/distro.py", line 943, in _get_lsb_release_inforaise subprocess.CalledProcessError(code, cmd, stdout, stderr)subprocess.CalledProcessError: Command 'lsb_release -a' returned non-zero exit status 1.`$ /home/liulinjun/miniconda3/bin/conda info --envs`An unexpected error has occurred. Conda has prepared the above report.If submitted, this report will be used by core maintainers to improve
future releases of conda.
Would you like conda to send this report to the core maintainers?[y/N]: NNo report sent. To permanently opt-out, use$ conda config --set report_errors false
File "/root/miniconda3/lib/python3.9/site-packages/conda/_vendor/distro.py", line 943, in _get_lsb_release_inforaise subprocess.CalledProcessError(code, cmd, stdout, stderr)subprocess.CalledProcessError: Command 'lsb_release -a' returned non-zero exit status 1.`$ /root/miniconda3/bin/conda info --envs`An unexpected error has occurred. Conda has prepared the above report.If submitted, this report will be used by core maintainers to improve
future releases of conda.
# 解决方法一
find / -name lsb_releasemv /usr/bin/lsb_release /usr/bin/lsb_release.bak
或者
rm -rf /usr/bin/lsb_release# 解决方法二
如果方法一无法解决,可尝试方法二。
conda config --set report_errors false

相关文章:

Anaconda在Ubuntu下的安装与简单使用

一、参考资料 ubuntu16.04下安装&配置anacondatensorflow新手教程 二、安装Anaconda 下载 Miniconda镜像1 or Miniconda镜像2 # 下载 wget Miniconda3-py39_4.10.3-Linux-x86_64.sh# 安装 bash Miniconda3-py39_4.10.3-Linux-x86_64.sh一路yes 安装过程中的选项 Do you …...

网络编程【InetAddress , TCP 、UDP 、HTTP 案例】

day38上 网络编程 InetAddress 理解&#xff1a;表示主机类 一个域名 对应 多个IP地址 public static void main(String[] args) throws UnknownHostException {//获取本机的IP地址 // InetAddress localHost InetAddress.getLocalHost(); // System.out.println(localHos…...

软考中级工程师网络技术第二节网络体系结构

OSPF将路由器连接的物理网络划分为以下4种类型&#xff0c;以太网属于&#xff08;25&#xff09;&#xff0c;X.25分组交换网属于&#xff08;非广播多址网络NBMA&#xff09;。 A 点对点网络 B 广播多址网络 C 点到多点网络 D 非广播多址网络 试题答案 正确答案&#xff1a; …...

Mac 软件清单

~自留备用~ Macbook用了几年之后, 512G的内置硬盘有些紧张了, 这几天总是提示空间不足, 就重装了下系统, 重装之后竟然不记得有些软件的名字和下载链接, 特此记录 Office 办公套件 直接从微软官网下载Office 安装包https://officecdnmac.microsoft.com/pr/C1297A47-86C4-4C1F…...

【Leetcode每日一题】 分治 - 颜色分类(难度⭐⭐)(57)

1. 题目解析 题目链接&#xff1a;75. 颜色分类 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了。 2.算法原理 算法思路解析 本算法采用三指针法&#xff0c;将数组划分为三个区域&#xff0c;分别用于存放值为0、1和2的元素。通过…...

微信登录功能-保姆级教学

目录 一、使用组件 二、登录功能 2.1 步骤 2.2 首先找到网页权限 复制demo 代码 这里我们需要修改两个参数 三、前端代码 3.1 api 里weiXinApi.ts 3.2 api里的 index.ts 3.3 pinia.ts 3.4 My.vue 四、后端代码 4.1 WeiXinController 4.2 Access_Token.Java 4.3 We…...

嵌入式MCU BootLoader开发配置详细笔记教程

目录 一、BootLoader基础 二、BootLoader原理及配置 三、BootLoader程序 bootloader.h bootloader.c 四、Application1 用户程序 application1.h application1.c 五、Application2 用户程序 application2.h 六、程序运行效果 七、工程文件Demo 一、BootLoader基础 …...

Unity 中消息提醒框

Tooltip 用于ui布局 using System.Collections; using System.Collections.Generic; using UnityEngine; using TMPro; using UnityEngine.UI;[ExecuteInEditMode()] // 可以在编辑模式下运行public class Tooltip : MonoBehaviour {public TMP_Text header; // 头部文本publi…...

好数(蓝桥杯)

文章目录 好数题目描述暴力方法一暴力方法二&#xff08;超时&#xff09; 好数 题目描述 【问题描述】 一个整数如果按从低位到高位的顺序&#xff0c;奇数位&#xff08;个位、百位、万位 &#xff09;上的数字是奇数&#xff0c;偶数位&#xff08;十位、千位、十万位 …...

自动化收集Unity版本更新日志

自动化收集Unity版本更新日志 &#x1f365;功能介绍&#x1f96a;食用手册填写配置开始搜集 &#x1f368;数据展示 &#x1f365;功能介绍 &#x1f4a1;获取指定年份中所有的Unity版本更新日志。 &#x1f4a1;根据指定字符串过滤。 &#x1f4a1;.收集后自动保存成markdow…...

【CSS】CSS水平居中方案

CSS水平居中方案 1. 行内元素水平居中 设置父元素的text-align:center .box {width: 300px;height: 300px;margin: 100px auto;text-align: center;background-color: pink; }2. 块级元素水平居中 当块级元素设置了明确的宽度数值时&#xff0c;可以使用margin: 0 auto 3.…...

SQL注入sqli_labs靶场第二题

解题思路与第一题相同 ?id1 and 11 和?id1 and 12进行测试如果11页面显示正常和原页面一样&#xff0c;并且12页面报错或者页面部分数据显示不正常&#xff0c;那么可以确定此处为数字型注入。 联合查询&#xff1a; 猜解列名数量&#xff1a;3 ?id1 order by 4 判断回显…...

基于机器学习的人脸发型推荐算法研究与应用实现

1.摘要 本文主要研究内容是开发一种发型推荐系统&#xff0c;旨在识别用户的面部形状&#xff0c;并根据此形状推荐最适合的发型。首先&#xff0c;收集具有各种面部形状的用户照片&#xff0c;并标记它们的脸型&#xff0c;如长形、圆形、椭圆形、心形或方形。接着构建一个面部…...

【服务器部署篇】Linux下Nginx的安装和配置

作者介绍&#xff1a;本人笔名姑苏老陈&#xff0c;从事JAVA开发工作十多年了&#xff0c;带过刚毕业的实习生&#xff0c;也带过技术团队。最近有个朋友的表弟&#xff0c;马上要大学毕业了&#xff0c;想从事JAVA开发工作&#xff0c;但不知道从何处入手。于是&#xff0c;产…...

React搭建一个文章后台管理系统

1、项目准备 本篇文章讲解的是一个简单的文章后台管理系统&#xff0c;系统的功能很简单&#xff0c;如下&#xff1a;登录、退出&#xff1b;首页&#xff1b;内容(文章)管理&#xff1a;文章列表、发布文章、修改文章。 1&#xff09;React官方脚手架&#xff1a;create-rea…...

Elasticsearch 支持的插件 —— 筑梦之路

Analysis 插件&#xff1a; 1、IK Analyzer&#xff1a;适用于中文分词的插件&#xff0c;提供了针对中文文本的分析器。 2、Smart Chinese Analysis&#xff1a;另一个中文分词插件&#xff0c;支持中文智能分词。 集群管理插件&#xff1a; 1、Kibana&#xff1a;Elasticsear…...

HTML:链接

目录 一、超链接 二、 外联元素 一、<a>超链接 <a> 标签用于定义超链接&#xff0c;超链接可以让用户从一个网页跳转到另一个网页。 常用属性&#xff1a; href指定链接的目标地址。download表示链接是一个下载链接&#xff0c;指定下载的文件名。target 指定在…...

vscode远程连接centos

文章目录 vacode连接linux1. 安装插件2. 查看配置3. 打开ssh4. 远程连接 vacode连接linux 1. 安装插件 在扩展栏搜索remote &#xff0c;找到Remote Development插件&#xff0c;进行安装&#xff1a; 2. 查看配置 打开自己的linux终端&#xff0c;输入ifconfig&#xff0c;…...

scala---面向对象(类,对象,继承,抽象类,特质)

一、类&#xff08;class&#xff09;和 对象&#xff08;object&#xff09; 1、类 类就是对客观的一类事物的抽象。用一个class关键字来描述和Java一样&#xff0c;在这个类中可以拥有这一类事物的属性&#xff0c;行为等等。 2、为什么要有对象 在java中的一个class既可…...

【机器学习300问】68、随机初始化神经网络权重的好处?

一、固定的初始化神经网络权重可能带来的问题 在训练神经网络的时候&#xff0c;初始化权重如果全部设置为0或某个过大值/过小值。会导致一些问题&#xff1a; 对称权重问题&#xff1a;全为0的初始化权重会导致神经网络在前向传播时接收到的信号输入相同。每个神经网络节点中…...

如何理解 IP 数据报中的 TTL?

目录 前言理解 前言 面试灵魂一问&#xff1a;说说对 IP 数据报中 TTL 的理解&#xff1f;我们都知道&#xff0c;IP 数据报由首部和数据两部分组成&#xff0c;首部又分为两部分&#xff1a;固定部分和可变部分&#xff0c;共占 20 字节&#xff0c;而即将讨论的 TTL 就位于首…...

大语言模型(LLM)中的KV缓存压缩与动态稀疏注意力机制设计

随着大语言模型&#xff08;LLM&#xff09;参数规模的增长&#xff0c;推理阶段的内存占用和计算复杂度成为核心挑战。传统注意力机制的计算复杂度随序列长度呈二次方增长&#xff0c;而KV缓存的内存消耗可能高达数十GB&#xff08;例如Llama2-7B处理100K token时需50GB内存&a…...

ABAP设计模式之---“简单设计原则(Simple Design)”

“Simple Design”&#xff08;简单设计&#xff09;是软件开发中的一个重要理念&#xff0c;倡导以最简单的方式实现软件功能&#xff0c;以确保代码清晰易懂、易维护&#xff0c;并在项目需求变化时能够快速适应。 其核心目标是避免复杂和过度设计&#xff0c;遵循“让事情保…...

重启Eureka集群中的节点,对已经注册的服务有什么影响

先看答案&#xff0c;如果正确地操作&#xff0c;重启Eureka集群中的节点&#xff0c;对已经注册的服务影响非常小&#xff0c;甚至可以做到无感知。 但如果操作不当&#xff0c;可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...

短视频矩阵系统文案创作功能开发实践,定制化开发

在短视频行业迅猛发展的当下&#xff0c;企业和个人创作者为了扩大影响力、提升传播效果&#xff0c;纷纷采用短视频矩阵运营策略&#xff0c;同时管理多个平台、多个账号的内容发布。然而&#xff0c;频繁的文案创作需求让运营者疲于应对&#xff0c;如何高效产出高质量文案成…...

【Redis】笔记|第8节|大厂高并发缓存架构实战与优化

缓存架构 代码结构 代码详情 功能点&#xff1a; 多级缓存&#xff0c;先查本地缓存&#xff0c;再查Redis&#xff0c;最后才查数据库热点数据重建逻辑使用分布式锁&#xff0c;二次查询更新缓存采用读写锁提升性能采用Redis的发布订阅机制通知所有实例更新本地缓存适用读多…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

Web中间件--tomcat学习

Web中间件–tomcat Java虚拟机详解 什么是JAVA虚拟机 Java虚拟机是一个抽象的计算机&#xff0c;它可以执行Java字节码。Java虚拟机是Java平台的一部分&#xff0c;Java平台由Java语言、Java API和Java虚拟机组成。Java虚拟机的主要作用是将Java字节码转换为机器代码&#x…...

解读《网络安全法》最新修订,把握网络安全新趋势

《网络安全法》自2017年施行以来&#xff0c;在维护网络空间安全方面发挥了重要作用。但随着网络环境的日益复杂&#xff0c;网络攻击、数据泄露等事件频发&#xff0c;现行法律已难以完全适应新的风险挑战。 2025年3月28日&#xff0c;国家网信办会同相关部门起草了《网络安全…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...