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

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

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值