问题:因为新的服务器A不能联网,导致离线pip install包耗时耗力,旧的服务器B中的Anaconda和A中是同一个版本,有现成的python环境,并且服务器B可以联网,现想将B中的环境,直接移植到A中使用。

解决步骤:

1. 在服务器B上查看要移植python环境名称:本文以“pyscenic”为例

conda info --envs

2. 打包环境

在服务器B上安装conda-pack(若已安装,请忽略):

conda install -c conda-forge conda-pack

打包环境:

conda pack -n pyscenic -o pyscenic.tar.gz

3. 将打包文件传输到服务器A上:scp或xftp都行

4. 在服务器A上操作

4.1 解压环境:在服务器A上,将打包文件解压到目标目录:

mkdir -p /path/to/pyscenic
tar -xzf myenv.tar.gz -C /path/to/pyscenic

4.2 激活环境:

source /path/to/env/bin/activate

4.3 清理(可选)

/path/to/pyscenic/bin/conda-unpack

4.4 验证环境:如果输出路径指向解压后的环境就成功。

python -c "import sys; print(sys.executable)"

注:conda-pack不支持直接打包base 环境(即默认的根环境)。这是因为base环境是Conda的默认环境,包含Conda 自身和许多核心工具,直接打包可能会导致路径冲突或其他问题。若非要打包,解决方式是克隆一个新环境,再打包:

conda create -n base_clone --clone base
conda pack -n base_clone -o base_clone.tar.gz

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐