accesso all'installazione di pip negato su Windows


110

Sto provando a eseguire pip install mitmproxysu Windows, ma continuo a ottenere l'accesso negato, anche con cmde PowerShellutilizzando l' Run as Administratoropzione.

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'

Come posso farlo funzionare?


Risposte:


139

In caso di Windows, in cmd prova a eseguire pip install usando l'eseguibile Python

per esempio

python -m pip install mitmproxy

questo dovrebbe funzionare, almeno ha funzionato per me per l'installazione di altri pacchetti.


6
Per qualsiasi motivo, le autorizzazioni del file temporaneo erano meno del pieno controllo per il mio utente. Percorrere questa strada ha python -mfatto la differenza.
Jason Dunkelberger,

2
Sappiamo perché funziona? E non tramite PowerShell?
Big Money

66

Modifica le autorizzazioni di sicurezza della cartella di installazione di Python:

  1. Apri una shell Python
  2. Vai al task manager
  3. Trova il processo Python
  4. Fare clic con il tasto destro e aprire la posizione
  5. La cartella si aprirà in explorer, vai su una directory
  6. Fare clic con il pulsante destro del mouse sulla cartella e selezionare proprietà
  7. Fare clic sulla scheda di sicurezza e premere "modifica"
  8. Aggiungi tutti e dai loro il permesso di leggere e scrivere.
  9. Salva le modifiche

Se apri cmdcome amministratore; quindi puoi fare quanto segue:

Se Python è impostato nel tuo PATH, allora:

python -m pip install mitmproxy

3
Ho dovuto farlo sia per TUTTI I PACCHETTI DI APPLICAZIONE che per gli utenti, ma poi ha funzionato.
Cronaca

1
Ha funzionato perfettamente. Grazie mille!
Sudipto Shome

3
Percorso alternativo con uno sforzo simile: 1) Installa Linux 2)sudo pip install foo
Nearoo

1
@Chronicle Hai davvero permesso a tutti di leggere e scrivere nei profili utente? Se sì, è un'idea piuttosto cattiva (molto cattiva).
David Ferenczy Rogožan

@Richard In che modo l'aggiunta dei permessi di lettura e scrittura nelle directory di Python può risolvere il problema con il permesso negato nella tempdirectory dell'utente ? Direi che è il modo di eseguire pip( python -m pipanziché proprio pipcome suggerito da @nayak) ciò che aiuta, quei 9 passaggi precedenti sono molto probabilmente irrilevanti (poiché in realtà non ha alcun senso).
David Ferenczy Rogožan

27

Personalmente, ho scoperto che aprendo cmdcome amministratore quindi esegui python -m pip install mitproxy sembra risolvere il mio problema.

Nota: - Ho installato python tramitechocolatey


Mi hai salvato la giornata, fratello!
Maulik Dodia

1
se corri cmdcome amministratore dovresti essere in grado di fare semplicemente normale pip install [package]. Comunque ha funzionato per me.
EliSquared

14

Un'altra cosa che non è stata trattata nelle risposte precedenti e che spesso causa problemi su Windows e mi ha impedito di installare alcuni pacchetti nonostante l'esecuzione come amministratore è che ottieni lo stesso errore di autorizzazione negata se c'è un altro programma che utilizza alcuni dei file che hai (o pip install) prova ad accedere. Questa è una "caratteristica" davvero stupida di Windows che si apre molte volte, ad esempio quando si tenta di spostare alcuni file.

Inoltre non ho idea di come capire quale programma blocca un particolare file, quindi la cosa più semplice da fare è riavviare e fare l'installazione prima di iniziare qualsiasi cosa, in particolare prima di eseguire, ad esempio, Spyder o qualsiasi altro software basato su Python. Puoi anche provare a chiudere tutti i programmi, ma può essere complicato sapere quale contiene effettivamente un file. Per una directory, ad esempio, è sufficiente che tu abbia una finestra di Explorer aperta in quella directory.


Sì, ha fatto il trucco per me! Ho lavorato contemporaneamente su Git Bash, Pycharm Terminal e Windows Terminal, dopo aver chiuso due su tre tutto ha funzionato.
Cappo

10

Apri cmd con "Esegui come amministratore" ed esegui il comando pip install mitmproxy. Lo installerà.


10

Come, sto installando tramite anaconda Prompt. Nel mio caso, non ha nemmeno funzionato con python -m pip installQuindi, aggiungo questo

python -m pip install <package_name> --user

Per me funziona.

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

Nota che le virgolette doppie non sono necessarie, puoi dare il nome del pacchetto che vuoi installare.

Un altro dovresti provare a eseguire il prompt dei comandi come Esegui come amministratore e quindi provare l'installazione di pip. Dovrebbe funzionare neanche.


Questo ha funzionato per me per installare i pacchetti python (sympy in questo caso) a scuola. Grazie!
JDG

La migliore soluzione quando non si dispone dei diritti di amministratore sul sistema.
Ajay Sharma

5

Prova a dare il permesso di controllare completamente la cartella python.

Trova la directory root di Python -> fai clic con il pulsante destro del mouse -> proprietà -> sicurezza -> modifica -> dai agli utenti il ​​controllo completo -> sì e attendi che il processo sia finito.

Per me funziona.


3

Prova a eliminare la cartella c:\\users\\bruno\\appdata\\local\\temp\\easy_install-0fme6umanualmente e quindi riprova il comando pip.


Grazie per questo. Alcuni file pip temporanei stavano bloccando l'installazione.
Eok

3

L'apertura del prompt dei comandi come amministratore ha funzionato per me senza utilizzare l'eseguibile Python. Fare clic con il tasto destro sul collegamento del prompt dei comandi e scegliere "Esegui come amministratore". Quindi esegui il seguente comando.

pip install Django

Lo stesso per me: era solo necessario eseguire cmd come amministratore.
Charidimos

3

La causa nel mio caso era avere un taccuino jupyter aperto, che stava importando la relativa libreria; la causa principale sembra essere un errore di Windows dovuto al fatto che il file è aperto / in uso (vedere anche la risposta di @Robert e la raccomandazione di riavviare).

Quindi un'altra cosa da verificare è che nessun altro processo Python è in esecuzione.

Per me, spegnere il server del notebook ha risolto il problema.


2
  1. Apri il prompt dei comandi come amministratore.

  2. Per installare qualsiasi pacchetto Python usa questo comando incluso --user.

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


1

Quando tutto il resto fallisce, prova a chiudere il tuo IDE. Ho avuto molti casi in cui PyCharm stava causando questo. Non appena ho chiuso PyCharm, sono stato finalmente in grado di installare i miei pacchetti dalla riga di comando. In alternativa, puoi anche installare tramite PyCharm stesso in Impostazioni -> Progetto: xxx -> Interprete del progetto -> +.


1
Ho avuto lo stesso problema fino a quando non ho chiuso Spyder
atm

0

Esegui cmd.exe come amministratore, quindi digita:

python -m pip install

0

Ho riscontrato un problema simile, ma il rapporto di errore riguarda

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

Per prima cosa ho provato questo https://python-forum.io/Thread-All-pip-install-attempts-are-met-with-SSL-error#pid_28035 , ma sembra che non sia riuscito a risolvere i miei problemi e ripeto ancora il stesso problema.

In secondo luogo, se stai lavorando su un computer aziendale, generalmente potrebbe esistere un filtro per i contenuti web (ma posso accedere direttamente a https://pypi.python.org tramite il browser) e risolvere questo problema aggiungendo un server proxy.

Per Windows, apri Internet propertiestramite IE o Chrome o qualsiasi altra cosa, quindi imposta un indirizzo proxy e una porta validi e in questo modo risolvi i miei problemi

O semplicemente aggiungendo l'opzione pip --proxy [proxy-address]:port install mitmproxy. Ma devi sempre aggiungere questa opzione durante l'installazione da pypi

Le due soluzioni di cui sopra sono alternative per la tua richiesta.


0

Nel mio caso, non ha nemmeno funzionato python -m pip install

Quello che ho fatto è, da un cmd come amministratore:

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

Per generare un cmd SYSTEM, quindi pip install mitmproxy

;)


-1

Basta chiudere tutti i file python aperti. E prova a eseguire come amministratore. Funzionerà.

per esempio

pip install numpy
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.