Linux 端快速迁移 conda 环境到另一台服务器上

avatar
作者
筋斗云
阅读量:0

Linux 端快速迁移 conda 环境到另一台服务器上

一、前言

  本文说明如何将一台服务器上的某个 conda 环境快速复制到另一台服务器上。

二、详细步骤

1. 打包环境

  此操作在需要打包 conda 环境的那台服务器上完成。
  先后在 shell 中执行以下命令:

pip install conda-pack conda pack -n env_name    # emv_name 是需要打包的环境名 

  操作完成后,会在当前目录下生成一个名为env_name.tar.gz的文件。
  然后将env_name.tar.gz文件复制到另一台需要迁移环境的目标服务器上,可以手动复制,也可以使用以下命令:

# 以下命令中:xxx 改为端口号,username 改为用户名,192.168.0.0 改为目标服务器的 ip 地址 # /home/username/ 改为目标服务器上放文件的地址 scp -r -P xxx env_name.tar.gz username@192.168.0.0:/home/username/ 

2. 解压缩文件

  目标服务器上,在env_name.tar.gz文件同目录下创建.py文件,并复制以下内容:

# 获取环境的 tar.gz 文件,env_name 是要打包的环境名 # pip install conda-pack # conda pack -n env_name  import os import tarfile  name = '' file_name = '/home/username/env_name.tar.gz'  new_env_path = f'/home/username/anaconda3/envs/{name}'    # ananconda 存放环境的路径 if not os.path.exists(new_env_path):     os.mkdir(new_env_path)  def untar(file_name, dir):     t_file = tarfile.open(file_name)     t_file.extractall(new_env_path)  untar(file_name, new_env_path) 

  以上文件中需要改 3 个地方(目标服务器上需要已经安装好 Anaconda):

name = ''    # 给环境赋一个新的名字 file_name = '/home/username/env_name.tar.gz'    # file_name 改成自己的 .tar.gz 文件的绝对路径 new_env_path = f'/home/username/anaconda3/envs/{name}'    # 此路径中 username 改为自己的用户名 

  改好后执行脚本文件即可。
  此处提供一个.tar.gz文件,配置为:

# torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1 

  百度网盘下载地址:
  链接:https://pan.baidu.com/s/1sJXksht6skd5W7jsu0vRBA
  提取码:amtd
  对本文有任何疑问或者意见和建议,欢迎私信或评论区留言讨论!

参考资料

  1.https://blog.csdn.net/Wjeana/article/details/126705655?spm=1001.2014.3001.5506

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!