【问题标题】:How to back up anaconda environment in Windows 10?如何在 Windows 10 中备份 anaconda 环境?
【发布时间】:2019-02-06 23:25:28
【问题描述】:

最近,由于某些错误的 conda 包升级,我的 anaconda 环境被破坏了。由于这次备份经验,我想备份我的 anaconda 环境,以便将来轻松恢复。

我所做的备份是将整个文件夹压缩到C:\ProgramData\Anaconda3。这是正确的方法吗?

我使用的是 Windows 10,anaconda python v3.6 64 位。

【问题讨论】:

标签: python python-3.x windows-10 anaconda


【解决方案1】:

压缩conda 环境用于备份目的实际上没有任何意义,因为还有其他方法可以做到这一点,这些方法可能更合适,并且使用专门为此而设计的内置函数。

您可以创建conda 环境的.txt 版本,详细说明其中的每个模块和版本,然后可用于在未来重新创建EXACT 环境。 p>

# Create list of the environment
conda list --explicit environment_backup.txt

# Use the newly created text file to recreate the environment
conda create --name my_env_name --file environment_backup.txt

有关管理conda 环境的更多信息,请参阅docs

NB 另外一点,conda 环境目录可能相当大(通常 >1GB),而此处创建的 txt 文件约为 25KB,在归档某些内容以确保安全时具有明显优势 -保留。

【讨论】:

  • 第一个命令中缺少 >。应该是:conda list --explicit > environment_backup.txt
【解决方案2】:

正如the anaconda website 所分享的那样,您可以通过多种方式实现这一目标。但是,如果您的互联网访问受限或无法访问,建议使用名为“conda-pack”的工具(不幸的是,目前使用相同的操作系统)。

按照以下步骤操作:

conda install -c conda-forge conda-pack

然后在你的源机器上:

# Pack environment my_env into my_env.tar.gz
$ conda pack -n my_env

# Pack environment my_env into out_name.tar.gz
$ conda pack -n my_env -o out_name.tar.gz

# Pack environment located at an explicit path into my_env.tar.gz
$ conda pack -p /explicit/path/to/my_env

最后,在您的目标机器上:

# Unpack environment into directory `my_env`
$ mkdir -p my_env
$ tar -xzf my_env.tar.gz -C my_env

# Use python without activating or fixing the prefixes. Most python
# libraries will work fine, but things that require prefix cleanups
# will fail.
$ ./my_env/bin/python

# Activate the environment. This adds `my_env/bin` to your path
$ source my_env/bin/activate

# Run python from in the environment
(my_env) $ python

# Cleanup prefixes from in the active environment.
# Note that this command can also be run without activating the environment
# as long as some version of python is already installed on the machine.
(my_env) $ conda-unpack

# At this point the environment is exactly as if you installed it here
# using conda directly. All scripts should work fine.
(my_env) $ ipython --version

# Deactivate the environment to remove it from your path
(my_env) $ source my_env/bin/deactivate

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-01-24
    • 2017-06-05
    • 1970-01-01
    • 2016-03-16
    • 2018-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多