容器重启后,Conda文件完整保存(虚拟环境、库包),如何重新安装conda并迁移之前的虚拟环境

Vim安装

容器重启后默认是vi,升级vim,执行命令

apt install -y vim

安装 Anaconda

1. 下载Anaconda

其他版本请查看Anaconda官方库

wget https://mirrors.bfsu.edu.cn/anaconda/archive/Anaconda3-2023.03-1-Linux-x86_64.sh --no-check-certificate

2. 安装
执行命令

bash Anaconda3-2023.03-1-Linux-x86_64.sh

一直enter,直到选择安装目录,本次安装我选择的目录是 /opt/data/conda,如果将来容器重启,我会保持安装在这个目录。

3. conda激活

执行命令

source ~/.bashrc

如果需要修改bashrc文件,执行

vim ~/.bashrc

查看Conda激活模块参数

在这里插入图片描述

source ~/.bashrc 后自动进入base环境,此时才可以使用 conda – 命令

在这里插入图片描述

4. 虚拟环境安装

此时你可以重新创建新的虚拟环境

只需要执行命令

conda create -n your_env python=3.8

创建完成后进入你的环境

conda activate your_env

退出环境执行

conda deactivate

5. 迁移虚拟环境

迁移虚拟环境的方法有很多,有打包迁移,有复制迁移,基本思想就是将你原来在envs/下的你的环境目录复制到conda新安装的目录的envs下面

这里介绍复制迁移

原来的环境在 /opt/data/private/conda/envs/your_env

现在需要迁移到 /opt/data/conda/envs/

首先第一步是执行复制命令

cp -r /opt/data/private/conda/envs/your_env /opt/data/conda/envs/

这样在/opt/data/conda/envs/下面就会有新的文件夹your_env

然后就可以直接激活环境

conda activate your_env

如果有这么顺利就好,此时你会发现编译器不匹配

在这里插入图片描述

这里需要对你的环境的编译器进行修改

执行命令

conda env config vars set CONDA_PYTHON_EXE=/opt/data/conda/bin/python

/opt/data/conda/bin/python就是新安装的conda目录下的编译器,注意不是虚拟环境下的哈,就是conda安装目录下的,这个直接复制即可,无需改变

执行后需要重新激活环境

conda activate your_env

这里还会遇到一个问题,就是pip的问题

需要更改虚拟环境下的pip文件

一共需要修改3个pip文件

分别是pip,pip3,pip3.8(如果你的虚拟环境安装的是3.8,如果是3.9则换成3.9)

分别执行

vim /opt/data/conda/envs/your_env/bin/pip
vim /opt/data/conda/envs/your_env/bin/pip3
vim /opt/data/conda/envs/your_env/bin/pip3.8

三个文件长的一样,修改他们的第一行

在这里插入图片描述

将第一行改为上述这样,即 /opt/data/conda/envs/your_env/bin/python/3.8,/opt/data/conda/envs/是conda新安装目录下的虚拟环境目录。

此时迁移完毕,你可以正常使用了,无需重新下载包,省去很多时间


写于2023.12.4(4090服务器关机重启后的处理)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/215175.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

HarmonyOS4.0从零开始的开发教程09页签切换

HarmonyOS(七)页签切换 List组件和Grid组件的使用 Tabs组件的使用 概述 在我们常用的应用中,经常会有视图内容切换的场景,来展示更加丰富的内容。比如下面这个页面,点击底部的页签的选项,可以实现“首页…

研表究明,文字的序顺并不定一能响影GPT-4读阅

深度学习自然语言处理 原创作者:yy 很多年前,你一定在互联网上看过这张图,展示了人脑能够阅读和理解打乱顺序的单词和句子!而最近东京大学的研究发现,大语言模型(LLMs) 尤其是 GPT-4&#xff0c…

MyBatisX插件

MyBatisX插件 MyBatis-Plus为我们提供了强大的mapper和service模板,能够大大的提高开发效率。 但是在真正开发过程中,MyBatis-Plus并不能为我们解决所有问题,例如一些复杂的SQL,多表联查,我们就需要自己去编写代码和SQ…

Redis基础系列-主从复制

Redis基础系列-主从复制 文章目录 Redis基础系列-主从复制1. 什么是 Redis 主从复制?2. 主从复制有什么好处?3. 如何配置 Redis 主从复制?4. 主从复制的验证4.1 如何查看主从搭建成功4.2 主从常见疑问4.3 主从常见命令 5. 主从复制的原理和工…

Go json 差异比较 json-diff(RFC6902)

Go json 差异比较 json-diff(RFC 6902) 毕业设计中过程中为了比较矢量图的差异而依据 RFC 6902 编写的一个包,现已开源: Json-diff 使用 go get -u github.com/520MianXiangDuiXiang520/json-diff序列化与反序列化 与官方 json 包的序列化和反序列化不…

NoSuchColumnFamilyException: org.apache.hadoop.hbase.regionserv

问题 在IDEA运行HBASE脚本时出现如下报错: org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: org.apache.hadoop.hbase.regionserver.NoSuchColumnFamilyException: Column family table does not exist in region hbase:meta,,1.1588230740 i…

深入学习锁--Lock各种使用方法

一、什么是Lock Lock是一个接口,通常所说的可重入锁是指Lock的一个实现子类ReentrantLock 二、Lock实现步骤: ①创建锁对象Lock lock new ReentrantLock(); ②加锁lock.lock(); ③释放锁lock.unlock(); import java.util.concurrent.locks.Lock; import java.util…

我有才打造专属个人或企业知识付费平台,核心功能设计

在当今信息爆炸的时代,知识管理已经成为了每个人必须面对的问题。然而,市面上的知识付费平台大多数都是通用的,无法满足个性化需求。 因此,我有才提供了一款专属定制的适合个人的知识付费平台。核心产品能力如下: 一…

AGM离线下载器使用说明

AGM专用离线下载器示意图: 供电方式: 通过 USB 接口给下载器供电,跳线 JP 断开。如果客户 PCB 的 JTAG 口不能提供 3.3V 电源,或仅需烧写下载器,尚未连接用户 PCB 时,采用此种方式供电。 或者&#xff1a…

入职字节外包一个月,我离职了。。。

有一种打工人的羡慕,叫做“大厂”。 真是年少不知大厂香,错把青春插稻秧。 但是,在深圳有一群比大厂员工更庞大的群体,他们顶着大厂的“名”,做着大厂的工作,还可以享受大厂的伙食,却没有大厂…

PET(Point-Query Quadtree for Crowd Counting, Localization, and More)

PET(Point-Query Quadtree for Crowd Counting, Localization, and More) 介绍实验记录训练阶段推断阶段 介绍 论文:Point-Query Quadtree for Crowd Counting, Localization, and More 实验记录 训练阶段 TODO 推断阶段 下面是以一张输…

软件运行原理 - 内存模型 - 栈内存

说明 C/C软件运行时,内存根据使用方式的不同分为堆内存和栈内存,栈内存使用有以下特征: 栈内存使用(申请、释放)由系统自动分配和释放,程序员不用做任何操作。栈内存重复使用,进入函数时数据入…

Vue学习计划-Vue2--VueCLi(二)vuecli脚手架创建的项目内部主要文件分析

1. 文件分析 1. 补充: 什么叫单文件组件? 一个文件中只有一个组件 vue-cli创建的项目中,.vue的文件都是单文件组件,例如App.vue 2. 进入分析 1. package.json: 项目依赖配置文件: 如图,我们说主要的属性…

STM32F407-14.1.0-01高级定时器简介

TIM1 和 TIM8 简介 高级控制定时器(TIM1 和 TIM8)包含一个 16 位自动重载计数器,该计数器由可编程预分频器驱动。 此类定时器可用于各种用途,包括测量输入信号的脉冲宽度(输入捕获),或者生成输出…

xtts和ogg不选择?

不选择ogg的理由: 1.需要在源端创建用户赋权,启用数据库最小日志,附加日志等操作--对生产影响较大 2.外键约束过多,割接启用可能很慢https://www.modb.pro/db/201126--割接停机时间影响 3.初始化配置expdp导出可能快照过旧&#x…

18.Java程序设计-基于Springboot的电影院售票系统的设计与实现

摘要 电影产业在当今社会中占据着重要地位,电影院作为观影的主要场所,其售票系统的高效性和用户体验至关重要。本文基于Spring Boot框架设计并实现了一款电影院售票系统,旨在提高售票效率、优化用户体验,并解决传统售票方式存在的…

Java王者荣耀火柴人

主要功能 键盘W,A,S,D键:控制玩家上下左右移动。按钮一:控制英雄发射一个矩形攻击红方小兵。按钮控制英雄发射魅惑技能,伤害小兵并让小兵停止移动。技能三:攻击多个敌人并让小兵停止移动。普攻:对小兵造成基础伤害。小…

JS实现返利网注册系统(网页数据验证)

主代码 <!DOCTYPE HTMLPUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns"http://www.w3.org/1999/xhtml"><head><title>返利网注册</tit…

TeeChart.NET 2023.11.17 Crack

.NET 的 TeeChart 图表控件提供了一个出色的通用组件套件&#xff0c;可满足无数的图表需求&#xff0c;也针对重要的垂直领域&#xff0c;例如金融、科学和统计领域。 数据可视化 数十种完全可定制的交互式图表类型、地图和仪表指示器&#xff0c;以及完整的功能集&#xff0c…