切换服务器上自己用户目录下的 conda 环境和一个外部的 Conda 环境

如果我们有自己的 Miniconda 安装和一个外部的 Conda 环境(比如一个全局安装的 Anaconda),我们可以通过修改 shell 环境来切换使用它们。这通常涉及到更改 PATH 环境变量,以便指向你想要使用的 Conda 安装的可执行文件:

1. 确定 Conda 安装的路径

首先,我们需要知道每个 Conda 安装的路径。通常,Conda 的可执行文件位于安装目录下的 bin 子目录中。例如:

对于 Miniconda,路径可能类似于 /home/username/miniconda3/bin。

对于全局安装的 Anaconda,路径可能类似于 /usr/local/anaconda3/bin。

2. 更新 PATH 环境变量

接下来,我们需要更新 PATH 环境变量以包含你想使用的 Conda 安装的路径。可以在命令行中临时执行这一更改,也可以更新你的 shell 配置文件(如 .bashrc 或 .bash_profile)进行永久更改。

临时更改

在终端执行以下命令(以切换到全局安装的 Anaconda 为例):

bash 复制代码
export PATH=/usr/local/anaconda3/bin:$PATH

这将仅影响当前的终端会话。

永久更改

编辑你的.bashrc.bash_profile 文件,添加上面的 export 命令。然后,重新加载配置文件或开启新的终端会话。

bash 复制代码
nano ~/.bashrc  # 或者使用你喜欢的文本编辑器
# 添加 export 命令
source ~/.bashrc  # 重新加载配置

3. 激活 Conda 环境

一旦 PATH 更新,你应该能够通过以下命令激活 Conda 环境:

bash 复制代码
conda activate myenv

将 myenv 替换为你想要激活的环境名。

注意

  • 更改 PATH 环境变量会影响你的 shell 如何查找命令,包括 conda。确保你将正确的 Conda 安装路径放在 PATH 的前面。
  • 在同一台机器上管理多个 Conda 安装可能会导致混淆,尤其是在处理不同的环境和依赖时。尽量保持环境的清晰和一致性。(一般安装多个conda仅在自己当前用户没有权限去修改全局conda的情况)。
  • 永久更改(通过编辑 .bashrc 或 .bash_profile)将在重新登录或开启新的终端会话后生效。

4. 如果重新进入终端后,仍然是你用户目录下的 conda 而不是期望的外部 conda 环境,那可能是因为你的用户配置文件(如 .bashrc 或 .bash_profile)中设置的 PATH 变量默认指向了你的 Miniconda 安装。这种情况下,需要检查和修改这些配置文件,以确保它们指向正确的 Conda 安装路径。

  • 检查配置文件
bash 复制代码
vim ~/.bashrc
  • 查找 Conda 初始化代码
    在这些文件中,查找与 Conda 初始化相关的代码段。它通常看起来像这样:
bash 复制代码
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/username/miniconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
...
# <<< conda initialize <<<
  • 注释或修改初始化代码

    注释掉:如果你想暂时停用 Miniconda,可以通过在每行前面添加 # 来注释掉这段代码。

    修改路径:如果你想改为使用全局 Anaconda 安装,修改路径指向全局 Anaconda 的 bin 目录。

  • 重复上面的[1],[2],[3]步骤。

相关推荐
挥剑决浮云 -16 分钟前
Linux 之 安装软件、GCC编译器、Linux 操作系统基础
linux·服务器·c语言·c++·经验分享·笔记
立秋678939 分钟前
Python的defaultdict详解
服务器·windows·python
Lansonli1 小时前
云原生(四十一) | 阿里云ECS服务器介绍
服务器·阿里云·云原生
白拾1 小时前
使用Conda管理python环境的指南
开发语言·python·conda
小O_好好学1 小时前
CentOS 7文件系统
linux·运维·centos
哲伦贼稳妥2 小时前
一天认识一个硬件之机房地板
运维·网络·经验分享·其他
john_hjy2 小时前
11. 异步编程
运维·服务器·javascript
x晕x2 小时前
Linux dlsym符号查找疑惑分析
linux·运维·服务器
活跃的煤矿打工人2 小时前
【星海saul随笔】Ubuntu基础知识
linux·运维·ubuntu
tangdou3690986553 小时前
两种方案手把手教你多种服务器使用tinyproxy搭建http代理
运维·后端·自动化运维