我正在尝试使用“ conda update --name root conda”更新Anaconda及其软件包。但它每次都会失败。 错误消息:EnvironmentNotWritableError:当前用户没有对目标环境的写权限。 环境位置:C:\ ProgramData \ Anaconda3 有什么帮助吗?
答案 0 :(得分:9)
过去,我是通过OS X上的系统安装程序安装anaconda的,它创建了root拥有的~/.conda/environments.txt
。 Conda无法修改此文件,因此出现错误。
为解决此问题,我将该目录和文件的所有权更改为我的用户名:
sudo chown -R $USER ~/.conda
答案 1 :(得分:7)
打开此文件夹“ C:\ ProgramData \”,然后右键单击“ \ Anaconda3”。转到属性->安全,然后为每个用户选中所有复选框。这对我有用。
答案 2 :(得分:3)
您终端上的这一行代码可以解决问题
$ sudo chown -R $USER:$USER anaconda 3
答案 3 :(得分:2)
以管理员身份运行来启动命令提示符
答案 4 :(得分:2)
我也遇到了同样的问题,但是在Windows上单击开始按钮->右键单击 Anaconda Powershell提示,然后在命令提示符下执行以管理员身份运行 < strong> conda更新-n base -c默认为conda 。您的anaconda应该更新,而没有与管理员相关的错误。
答案 5 :(得分:1)
如果在Linux中使用sudo运行conda时遇到此错误,则可能是错误#7267:
通过sudo以非root用户身份登录时,例如通过:
sudo -u myuser -i
conda似乎假定它以root身份运行并引发错误。
唯一已知的解决方法似乎是:在您的~/.bashrc
中添加以下行:
unset SUDO_UID SUDO_GID SUDO_USER
...或者通过在运行conda之前以另一种方式运行该行来取消设置ENV变量。
如果您mistakenly installed anaconda/miniconda as root/via sudo也可能导致相同的错误,那么您可能需要执行以下操作:
sudo chown -R username /path/to/anaconda3
使用conda 4.6.14进行了测试。
答案 6 :(得分:1)
我遇到了同样的问题,并且base
环境在C:\ProgramData\Anaconda3
中。当安装了Anaconda for all users
时就是这种情况。
作为解决方案,我重新安装了Anaconda just for me
,现在base
环境在\AppData\Local\Continuum\anaconda3
中。现在可以通过conda update
进行更新,而无需管理员权限。
答案 7 :(得分:1)
CONDA更新-没有写入访问问题##已修复##
简单的解决方案:
conda --version
conda update conda
答案 8 :(得分:0)
如果您在Linux中遇到此问题,则常见的原因之一可能是文件夹“ anaconda 3”或“ anaconda 2”具有root所有权。这样可以防止其他用户写入该文件夹。 可以通过运行以下命令将文件夹的所有权从根目录更改为“ USER”来解决:
sudo chown -R $USER:$USER anaconda 3
或sudo chown -R $USER:$USER <path of anaconda 3/2 folder>
注意:如何确定文件夹是否具有root所有权? -相应文件夹的右上角将有一个锁定符号。 或右键单击文件夹->属性,您将可以查看所有者的详细信息
-R参数允许$ USER访问文件夹anaconda 3或任何相应文件夹中的所有文件夹和文件。它代表“递归”。
答案 9 :(得分:0)
作为替代方案,我建议您查看您的conda配置文件。
原因
有时在~/anaconda3/envs
的预定义路径之外的指定位置创建虚拟环境,我们使用以下内容附加conda配置文件:conda config --append envs_dirs /path/to/envs
其中envs_dirs
是配置文件,用于分配conda可以在其中找到虚拟环境的不同路径。删除此配置文件中最近添加的路径可以解决此问题。
解决方案
$:> conda config --show envs_dirs
envs_dirs:
- /home/some_recent_path # remove this
- /home/.../anaconda3/envs
注意值指定一个不同于预定义位置的目录,并使用
删除$:> conda config --remove envs_dirs /home/some_recent_path
现在将配置文件envs_dirs
设置为envs的默认位置。立即尝试创建新的环境。
答案 10 :(得分:0)
在安装之前删除用户主目录中的.condarc文件(例如/root/.condarc),即可解决此问题。
答案 11 :(得分:0)
就我而言, CONDA_ENVS_PATH 已被删除,所以我遇到了NotWritableError。所以我通过指定
解决了错误CONDA_ENVS_PATH=~/my-envs:/opt/anaconda/envs
在.bashrc文件中
答案 12 :(得分:0)
我也遇到了同样的问题。我通过重新安装anaconda解决了问题(此时安装时,我选择“只为我”作为用户),问题解决了。尝试相同的方法
答案 13 :(得分:0)
通常,在Windows上,需要管理员运行命令提示符。但是,如果您不想每次都这样做,请在Anaconda3目录中指定用户(或所有用户)的完全控制权限。请注意,为所有用户指定它可以使其他用户安装自己的软件包并修改内容。
答案 14 :(得分:0)
WINDOWS:
我在 (base) PS E:\Python> conda install ConfigParser
验证交易:失败
EnvironmentNotWritableError:当前用户没有目标环境的写权限。 环境位置:C:\ProgramData\Anaconda3
我的解决方案:以管理员身份打开命令提示符,然后再次执行上面的命令,它就成功了。
<块引用>C:\WINDOWS\system32>conda 安装 ConfigParser
收集包元数据(current_repodata.json):done 解决环境:done
套餐计划
环境位置:C:\ProgramData\Anaconda3
添加/更新规格: - 配置解析器
将安装以下新软件包:
configparser pkgs/main/noarch::configparser-5.0.2-pyhd3eb1b0_0
继续 ([y]/n)?是
准备交易:完成验证交易:完成执行 交易:完成
答案 15 :(得分:0)
我遇到了同样的问题。我的原因是在下载 Anaconda 时,我选择了“为所有用户下载”而不是“只为我”。我卸载了它,重新安装并更正了它。我不会再收到这个错误了。