【问题标题】:How to install Anaconda python for all users?如何为所有用户安装 Anaconda python?
【发布时间】:2023-03-30 12:47:01
【问题描述】:

Anaconda python distribution 非常方便部署科学计算环境(SCE)和切换python版本。默认情况下,安装会将python定位到~/anaconda,SCE只能使本地用户受益。

但我需要的是提供一个完整的 SCE wit Anaconda,同时屏蔽系统范围的 python 版本,因为我的集群正在运行 Spark,并为我们团队中的多个用户提供服务。当前的 Anaconda 版本可以吗?

厦门

【问题讨论】:

    标签: python anaconda


    【解决方案1】:

    安装程序可让您在任何地方安装。您可以将其安装到全球位置,例如 /opt/anaconda

    【讨论】:

    • 是的。而已。所有用户都可以访问此全局路径。
    • 每个用户如何将其设置为他们的默认 python 路径?
    • 每个用户都需要在他们的 bash 配置文件中将其添加到他们的 PATH 中。
    • 也可以修改/etc/profile中的PATH,对所有用户执行。
    • @becko 谢谢,更新:sudo mkdir /opt/anaconda && sudo chmod ugo+w /opt/anaconda 然后你可以在安装过程中指定路径到/opt/anaconda/anaconda3
    【解决方案2】:

    将 anaconda PATH 添加到/etc/profile:

    对于 anaconda 2:

    PATH=$PATH:$HOME/anaconda/bin
    

    对于 anaconda 3:

    PATH=$PATH:$HOME/anaconda3/bin
    

    然后:

    source /etc/profile
    

    【讨论】:

    • 似乎应该进入/etc/environment
    • 是一样的
    • 好吧,看来/etc/environment 是针对与shell 无关的应用程序。我最终在/etc/profile.d/ 中创建了一个conda.sh。但这会将 '*/anaconda/bin*` 中的所有内容添加到似乎过多的路径中。我们会看到...
    • 这似乎对我不起作用。不过,我的行为确实很奇怪-就像我自己一样,我仍然可以做conda activate,而且一切似乎都很好,但是如果我尝试运行一个调用conda activate 的脚本,我会得到你的错误CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
    • @szeitlin 您是否检查过 PATH 是否已正确添加给您/etc/profile
    【解决方案3】:

    Continuum 的 Anaconda 集群解决了这些问题。查看https://docs.continuum.io/anaconda-scale/

    【讨论】:

    【解决方案4】:

    您肯定需要安装到所有用户都可以访问的路径。 /opt/YOUR_CONDA_DISTRIB_NAME 是一个不错的候选人。

    但是,您还必须添加 conda 路径,当您将以下 shell 脚本添加到其他用户的 .bashrc 文件时,该路径会自动发生。您可以在 root 用户的 .bashrc 文件中找到 shell 脚本。为了记录,我把它带到这里:

    
    # >>> conda initialize >>>
    # !! Contents within this block are managed by 'conda init' !!
    __conda_setup="$('/opt/YOUR_CONDA_DISTRIB_NAME/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
    if [ $? -eq 0 ]; then
        eval "$__conda_setup"
    else
        if [ -f "/opt/YOUR_CONDA_DISTRIB_NAME/etc/profile.d/conda.sh" ]; then
            . "/opt/YOUR_CONDA_DISTRIB_NAME/etc/profile.d/conda.sh"
        else
            export PATH="/opt/YOUR_CONDA_DISTRIB_NAME/bin:$PATH"
        fi
    fi
    unset __conda_setup
    # <<< conda initialize <<<
    
    
    

    附: Anaconda 常用来表示YOUR_CONDA_DISTRIB_NAME 的几个常用名称:

    • anaconda
    • anaconda3
    • miniconda
    • miniconda3

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-31
      • 2014-11-07
      • 1970-01-01
      • 2018-08-20
      • 2022-06-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多