pip install acesso negado no Windows


110

Estou tentando rodar pip install mitmproxyno Windows, mas continuo tendo acesso negado, mesmo com cmde PowerShellusando a Run as Administratoropção.

WindowsError: [Error 5] Access is denied: 'c:\\users\\bruno\\appdata\\local\\temp\\easy_install-0fme6u\\cryptography-0.9.1\\.eggs\\cffi-1.1.2-py2.7-win-amd64.egg\\_cffi_backend.pyd'

Como posso fazer isso funcionar?


Respostas:


139

No caso do Windows, em cmd tente executar a instalação do pip usando o executável Python

por exemplo

python -m pip install mitmproxy

isso deve funcionar, pelo menos funcionou para mim para a instalação de outro pacote.


6
Por alguma razão, as permissões do arquivo temporário eram menos do que controle total para o meu usuário. Seguir esse caminho python -mfez a diferença.
Jason Dunkelberger

2
Nós sabemos por que isso funciona? E não através do PowerShell?
Big Money

66

Altere as permissões de segurança da pasta de instalação do Python da seguinte forma:

  1. Abra um shell Python
  2. Vá para o gerenciador de tarefas
  3. Encontre o processo python
  4. Clique com o botão direito e abra o local
  5. A pasta será aberta no explorer, vá até um diretório
  6. Clique com o botão direito na pasta e selecione propriedades
  7. Clique na guia de segurança e clique em 'editar'
  8. Adicione todos e dê a eles permissão para ler e escrever.
  9. Salve suas alterações

Se você abrir cmdcomo administrador; então você pode fazer o seguinte:

Se Python estiver definido em seu PATH, então:

python -m pip install mitmproxy

3
Tive que fazer isso para TODOS OS PACOTES DE APLICATIVO e para Usuários, mas funcionou.
Crônica de

1
Funcionou perfeitamente. Muito obrigado!
Sudipto Shome

3
Rota alternativa com esforço semelhante: 1) Instale o Linux 2)sudo pip install foo
Nearoo

1
@Chronicle Você realmente permitiu que todos lessem e escrevessem nos perfis dos usuários? Se sim, é uma ideia muito ruim (muito ruim).
David Ferenczy Rogožan

@Richard Como adicionar as permissões de leitura e gravação nos diretórios do Python pode resolver o problema com a permissão negada no tempdiretório do usuário ? Eu diria que é a maneira de executar pip(em python -m pipvez de apenas pipcomo @nayak sugeriu) o que ajuda, essas 9 etapas anteriores são provavelmente irrelevantes (já que realmente não fazem nenhum sentido).
David Ferenczy Rogožan

27

Pessoalmente, descobri que abrir cmdcomo administrador e executar python -m pip install mitproxy parece resolver o meu problema.

Nota: - Eu instalei o python através dechocolatey


Você salvou meu dia, mano!
Maulik Dodia de

1
se você executar cmdcomo administrador, você poderá apenas fazer o normal pip install [package]. Funcionou para mim de qualquer maneira.
EliSquared

14

Uma coisa adicional que não foi abordada nas respostas anteriores e que costuma causar problemas no Windows e me impedir de instalar alguns pacotes, apesar de executar como administrador, é que você obtém o mesmo erro de permissão negada se houver outro programa que use alguns dos arquivos que você (ou pip install) tente acessar. Este é um "recurso" realmente estúpido do Windows que aparece muitas vezes, por exemplo, ao tentar mover alguns arquivos.

Além disso, não tenho ideia de como descobrir qual programa bloqueia um arquivo específico, então a coisa mais fácil de fazer é reiniciar e fazer a instalação antes de iniciar qualquer coisa, em particular antes de executar, por exemplo, Spyder ou qualquer outro software baseado em Python. Você também pode tentar fechar todos os programas, mas pode ser difícil saber qual deles realmente contém um arquivo. Para um diretório, por exemplo, é suficiente que você tenha uma janela do Explorer aberta nesse diretório.


Sim, fez o truque para mim! Trabalhei no Git Bash, Pycharm Terminal e Windows Terminal simultaneamente, após fechar dois de três tudo funcionou.
Cappo

10

Abra o cmd com "Executar como administrador" e execute o comando pip install mitmproxy. Ele irá instalá-lo.


10

Como, estou instalando através do Prompt do anaconda. No meu caso, nem funcionou com python -m pip installEntão, adiciono isso

python -m pip install <package_name> --user

Funciona para mim.

Gostar: python -m pip install "numpy-1.15.4+mkl-cp36-cp36m-win_amd64.whl" --user

Observe que aspas duplas não são necessárias, você pode fornecer o nome do pacote que deseja instalar.

Outro você deve tentar executar o Prompt de Comando como Executar como Administrador e então tentar instalar o pip. Deve funcionar também.


Isso funcionou para mim instalar pacotes python (sympy neste caso) na escola. Obrigado!
JDG de

A melhor solução quando você não tem direitos de administrador sobre seu sistema.
Ajay Sharma

5

Tente dar permissão para controle total da pasta python.

Encontre o diretório raiz do python -> clique com o botão direito do mouse -> propriedades -> segurança -> editar -> dê aos usuários controle total -> sim e espere o processo terminar.

Funciona para mim.


3

Tente excluir a pasta c:\\users\\bruno\\appdata\\local\\temp\\easy_install-0fme6umanualmente e tente novamente o comando pip.


Obrigado por isso. Alguns arquivos pip temporários estavam bloqueando a instalação.
Eok

3

Abrir prompt de comando como administrador funcionou para mim sem usar o executável Python. Clique com o botão direito do mouse no atalho do prompt de comando e escolha "Executar como Administrador". Em seguida, execute o seguinte comando.

pip install Django

O mesmo para mim - ele só precisava executar cmd como administrador.
Charidimos 01 de

3

A causa no meu caso foi ter um bloco de notas jupyter aberto, que importava a biblioteca relevante; a causa raiz parece ser o erro do Windows devido ao arquivo estar aberto / em uso (veja também a resposta de @Robert e a recomendação para reiniciar).

Portanto, outra coisa a verificar é se nenhum outro processo Python está em execução.

Para mim, desligar o servidor do notebook resolveu o problema.


2
  1. Abra o Prompt de Comando como Administrador.

  2. Para instalar qualquer pacote Python, use este comando incluindo --user.

pip install --ignore-installed --upgrade --user <packagename>


1

Quando tudo mais falhar, tente encerrar o IDE. Tive muitos casos em que PyCharm estava causando isso. Assim que fechei o PyCharm, finalmente consegui instalar meus pacotes a partir da linha de comando. Alternativamente, você também pode instalar através do próprio PyCharm em Configurações -> Projeto: xxx -> Intérprete do projeto -> +.


1
Tive o mesmo problema até fechar o Spyder
atm

0

Execute cmd.exe como administrador e digite:

python -m pip install

0

Eu encontrei um problema semelhante. Mas o relatório de erro é sobre

[SSL: TLSV1_ALERT_ACCESS_DENIED] tlsv1 alert access denied (_ssl.c:777)

Primeiro tentei https://python-forum.io/Thread-All-pip-install-attempts-are-met-with-SSL-error#pid_28035 , mas parece que não conseguiu resolver meus problemas e ainda repito o o mesmo problema.

E, segundo, se você estiver trabalhando em um computador comercial, geralmente pode existir um filtro de conteúdo da web (mas posso acessar https://pypi.python.org diretamente pelo navegador). E resolva esse problema adicionando um servidor proxy.

Para janelas, abra o Internet propertiesatravés do IE ou Chrome ou qualquer outro e, em seguida, defina o endereço de proxy válido e a porta , dessa forma, resolva meus problemas

Ou apenas adicionando a opção pip --proxy [proxy-address]:port install mitmproxy . Mas você sempre precisa adicionar esta opção ao instalar por pypi

As duas soluções acima são alternativas para sua demanda.


0

No meu caso, nem funcionou com python -m pip install

O que fiz é, de um cmd como administrador:

PsExec.exe -i -s -d cmd.exe

Para gerar um cmd SYSTEM, então pip install mitmproxy

;)


-1

Basta fechar todos os arquivos Python abertos. E tente executar como administrador. Vai funcionar.

por exemplo

pip install numpy
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.