【学习心得】conda打包进行环境迁移遇到conda包和pip包管理冲突问题

(一)背景描述

开发机器用于开发,实机机器用于测试,实机是离线的,两个机器需要同步环境。所以需要在开发环境中打包并在另一台 Linux 机器上还原该环境。

① 第一步:在开发机器上打包环境

bash 复制代码
# 1、在base环境安装 conda-pack(如果尚未安装)
conda install -c conda-forge conda-pack
pip install conda-pack  # 或者用 pip

# 2、打包 dev_env 环境
conda pack -n dev_env -o dev_env.tar.gz

这会生成一个名为 dev_env.tar.gz 的压缩文件,包含整个环境(包括二进制文件、Python、依赖库等)。可以通过 ls -lh dev_env.tar.gz 查看文件大小。

② 第二步:在测试机器上解压并激活环境

使用conda info查看conda环境保存路径,并在路径下创建一个环境文件夹。

bash 复制代码
# 查看conda虚拟环境存放路径
conda info
# 创建需要迁移的环境文件夹
mkdir ~/miniconda3/envs/dev_env

将压缩文件解压在conda的envs中。

bash 复制代码
tar -zxvf dev_env.tar.gz -C ~/miniconda3/envs/dev_env

激活环境并运行 conda-unpack。

bash 复制代码
conda activate dev_env
conda-unpack

(二)遇到问题

第一步中在打包dev_env环境的时候出错如下:

Collecting packages... CondaPackError: Files managed by conda were found to have been deleted/overwritten in the following packages: - pip 25.2: lib/python3.1/site-packages/pip-25.2.dist-info/INSTALLER lib/python3.1/site-packages/pip-25.2.dist-info/METADATA lib/python3.1/site-packages/pip-25.2.dist-info/RECORD + 453 others This is usually due to pip uninstalling or clobbering conda managed files, resulting in an inconsistent environment. Please check your environment for conda/pip conflicts using conda list, and fix the environment by ensuring only one version of each package is installed (conda preferred).

解决方案:

bash 复制代码
conda-pack -n test -o test.tar.gz --ignore-missing-files

确保所有的包都是pip安装的,加上一个 --ignore-missing-files 参数。

相关推荐
Blockbuater_drug3 天前
OpenMM分子动力学模拟02 安装:Linux:conda 一条命令装通 GPU 加速的分子模拟环境
linux·conda·cuda·gpu驱动·pythonpath·openmm安装
SoulRoar.6 天前
WSL2 + Conda 环境下MinerU 4.x GPU 服务部署与 systemd 常驻指南
conda·wsl·文档解析·mineru
沧海一笑-dj9 天前
【Python】Python学习笔记-模块与包
python·pip·模块·包·python包·python模块·包与模块
郝学胜-神的一滴10 天前
AI 编程智能体 16:从零基础搭建到精细化优化
人工智能·python·算法·语言模型·langchain·pip
万粉变现经纪人12 天前
如何解决 pip install 安装报错 检测到 yanked 版本需更换可用版本 问题
人工智能·python·scrapy·numpy·pandas·pyqt·pip
jiangliushi614 天前
GPT-6.1 Sol 免费用:pip install 太慢、超时?换清华镜像,再让 Codex 帮你写脚本
gpt·pip
看我debug17 天前
Android 运行时分析工作台 (Demo)。统一管理 Frida 脚本、自动注入(修改运行时代码)、收集结构化结果、生成 JSON 报告。
android·python·pip
benjiangliu18 天前
恩培趣味计算机视觉-01-conda环境和Python库
开发语言·python·conda
weixin_4617694022 天前
conda create 创建容器 Failed to resolve ‘repo.anaconda.com‘问题
开发语言·python·conda·repo·网络问题·无法创建
饭来_1 个月前
Ubuntu 中出现 CondaToSNonInteractiveError 的解决方法
ubuntu·conda·debug