如何从CondaUpgradeError“需要较新版本的conda”中解脱出来?

问题描述

conda文档在其“疑难解答”文档中明确提到了此问题。

Conda升级错误

原因

将conda从4.6.1降级到4.5.x,然后尝试conda install condaconda upgrade conda将产生类似于以下内容解决升级错误

Solving environment: Failed
CondaUpgradeError: This environment has prevIoUsly been operated on by a
conda version that's newer than the conda currently being used. A newer
version of conda is required.
target environment location: /opt/conda
current conda version: 4.5.9
minimum conda version: 4.6

更改.condarc文件。通过直接编辑.condarc文件来设置参数:allow_conda_downgrades: true在conda版本4.5.12中。然后,这将使您升级。如果您的版本早于4.5.12,请从程序包缓存中再次安装conda 4.6.1。

示例:如果我conda info说了package cache : /opt/conda/pkgs我的Python版本是3.7,则在命令行上键入conda install /opt/conda/pkgs/conda-4.6.1-py37_0.tar.bz2解决问题。

这应该已经提供了足够的信息,至少可以尝试从该问题中恢复。我决定添加一些其他信息,并用我自己的话重新措辞:

如果您降级到4.5.12的解决方

由于安装了4.5.12,因此您应该能够简单地修改.condarc文件并包含(或更改)allow_conda_downgrades: true

文档“使用.condarc conda配置文件”提供了该.condarc文件的可能位置:

***conda config

一个.condarc文件也可以设在 ,在这种情况下,它会覆盖任何在主目录。

然后再次更新到4.6(或以前使用的任何版本):

conda install conda=4.6.2

然后将.condarc文件中的设置更改回false:

allow_conda_downgrades: false

最后一步是可选的,但我认为认设置是false保护用户免受旧conda版本的元数据破坏。因此,从异常中恢复后,我将其改回原样。

如果您将x小于12降级到4.5.x(或以上方法无效),则可以解决该问题

如果这不起作用,或者您已降级到conda4.5.x的早期版本,则必须使用其他方法。跑:

conda info

搜索以开头的行package cache :。导航到该目录并查找conda....tar.gz.bz2文件。选择先前安装的一个,然后运行:

conda install PATH  # <- replace the PATH with the actual path to the selected conda file

请注意,您还可以直接anaconda通道下载文件,然后提供此下载文件的路径。

万不得已(如果您拼命而又无济于事)

如果这种方法不起作用,您可以尝试蛮力方法。尽管被警告说它们可能会对您的conda设置 -将它们作为最后的选择(例如,当您考虑卸载并重新安装conda / anaconda时)。

例如,您也可以尝试在现有安装上手动“安装”它(再次:这可能不起作用,也许您无法再次撤消此步骤!):

  • 使用在上一步中找到的conda“ tar.gz.bz2”文件(或者如果没有,请从anaconda频道下载它:https : //anaconda.org/anaconda/conda/files)
  • 将其解压缩到您的根环境中,替换现有文件
  • 希望!
  • 希望!
  • 测试是否有效

解决方法

我试图降级我的conda版本。使用4.6.2版的conda时,我运行了conda install conda=4.5.12。然后,我去运行其他conda命令,但遇到以下错误:

CondaUpgradeError: This environment has previously been operated on by a conda version that's newer
than the conda currently being used. A newer version of conda is required.
  target environment location: /home/selah/anaconda3
  current conda version: 4.5.12
  minimum conda version: 4.6

我现在陷入困境,无法成功运行任何conda命令。我如何才能使conda重新恢复正常工作?