Python Conda更新失败,出现PermissionError

Python Conda更新失败,出现PermissionError,python,conda,chown,Python,Conda,Chown,我在Mac OS 10.9上运行Python 3.5.2 我试着更新康达 conda更新conda 但它给了我这个错误 Traceback (most recent call last): File "/Users/cd/anaconda3/bin/conda", line 6, in <module> sys.exit(main()) File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/cl

我在Mac OS 10.9上运行Python 3.5.2

我试着更新康达

conda更新conda

但它给了我这个错误

    Traceback (most recent call last):
  File "/Users/cd/anaconda3/bin/conda", line 6, in <module>
    sys.exit(main())
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/cli/main.py", line 139, in main
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/cli/main.py", line 146, in args_func
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/cli/main_update.py", line 64, in execute
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/cli/install.py", line 424, in install
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/plan.py", line 539, in execute_actions
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/instructions.py", line 149, in execute_instructions
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/instructions.py", line 92, in LINK_CMD
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/instructions.py", line 88, in link
  File "/Users/cd/anaconda3/lib/python3.5/site-packages/conda/install.py", line 634, in link
  File "/Users/cd/anaconda3/lib/python3.5/os.py", line 241, in makedirs
    mkdir(name, mode)
PermissionError: [Errno 13] Permission denied: '/Users/cd/anaconda3/etc/fish/conf.d’
然后我尝试了
conda update conda
,但现在它给出了一个不同的错误:

zsh: /Users/cd/anaconda3/bin/conda: bad interpreter: /opt/anaconda1anaconda2anaconda3/bin/python3: no such file or directory
我尝试将
chown
放回根目录:

sudo chown -R root anaconda3
但是当我尝试
conda update conda
时,它给了我同样的“坏解释器”错误

其中conda
给出
/Users/cd/anaconda3/bin/conda


我不知道问题是否出在
chown
命令上,但如果您需要更多详细信息,请告诉我

您在/Users/USER/anaconda/bin/conda中的shebang行已断开:

#!/opt/anaconda1anaconda2anaconda3/bin/python

只需将其切换回指向Anaconda安装的链接:

#!/用户/用户/anaconda/bin/python


你有多个anaconda装置。1在
/opt
中,另一个在您的主目录中。我猜
root
拥有
/opt/anaconda*
cd
拥有您的主目录中的anaconda。修复你的
路径
,这样你就不会使用错误的anaconda,那么你就可以更新你的安装。谢谢,但是在
opt
中没有名为
anaconda*
的文件夹,
echo$PATH
中没有提到它,你的
/Users/cd/anaconda3/bin/conda
中的shebang就是
/选择/anaconda1anaconda2anaconda3/bin/python3
,如您发布的错误消息所示。这就是为什么我认为你们有多个水蟒装置。啊,我明白了。我认为康达做了一个自我毁灭的举动,出于某种原因在更新时对其shebang进行了更改,但我不明白为什么…当康达更新文件时,shebang总是更新。没有静态的shebang。如果另一个用户更新了自己的副本,它将具有与您更新副本时不同的shebang。这是因为您以root用户身份运行更新,而您本应以自己的身份运行更新。考虑<代码> USE1 和 USE2
user1
的shebang副本将是
#/Users/user1/anaconda3/bin/python3
,而
user2
的shebang将是
#/Users/user2/anaconda3/bin/python3
假设他们都选择anaconda3作为安装目录,并且都选择python3。
sudo chown -R root anaconda3