不同的Ubuntu服务器上,Anaconda的python虚拟环境迁移

目的:直接打包迁移anaconda中的python环境

将anaconda中的python虚拟环境,从一台服务器,直接“拷贝”到另一台服务器中。如果重新安装环境,python依赖的各个包还要重新下载安装一遍,贼麻烦!
在这里插入图片描述

前提介绍

Ubuntu16.04
anaconda3.5
迁移目标:python3.6(即上图中的env1)
anaconda可以管理多个虚拟环境,在anaconda/envs目录下。假如服务器1上,我们有5个python环境(如上图),我们现在要把env1,复制到新的服务器2上。

迁移过程

  1. 将服务器1上的anaconda/envs/env1,复制一份到服务器2的anaconda/envs下.
  2. 修改pip文件。pip具体路径:anaconda/envs/env1/bin/pip
    第一行中的python绝对路径需要修改正确!!!(否则pip install 报错)
#!/home/njlz/anaconda3/envs/uphead/bin/python

# -*- coding: utf-8 -*-
import re
import sys

from pip._internal.cli.main import main

if __name__ == '__main__':
    sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
    sys.exit(main())


注:暂时只遇到pip的问题,也许会出现anaconda/envs/env1/bin/目录中其他的执行命令的报错,大概率也是类似的原因。