Pakete konnten aufgrund eines EnvironmentError nicht installiert werden: [WinError 5] Zugriff verweigert:


89

Ich habe Windows 10. Ich habe die Installation von Tensorflow abgeschlossen. Es klappt. Es heißt "Hallo Tensorflow!". Aber das alles hat es vor sich:

2018-08-18 18:16:01.500579: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 2018-08-18 18:16:01.769002: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1405] Found device 0 with properties: name: GeForce GTX 950 major: 5 minor: 2 memoryClockRate(GHz): 1.3545 pciBusID: 0000:01:00.0 totalMemory: 2.00GiB freeMemory: 1.64GiB 2018-08-18 18:16:01.774030: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1484] Adding visible gpu devices: 0 2018-08-18 18:16:02.095489: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:965] Device interconnect StreamExecutor with strength 1 edge matrix: 2018-08-18 18:16:02.099093: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:971] 0 2018-08-18 18:16:02.100631: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:984] 0: N 2018-08-18 18:16:02.102156: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1097] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 1401 MB memory) -> physical GPU (device: 0, name: GeForce GTX 950, pci bus id: 0000:01:00.0, compute capability: 5.2) Hello Tensorflow!

Prozess zurückgegeben 0 (0x0) Ausführungszeit: 2.327 s Drücken Sie eine beliebige Taste, um fortzufahren

Wenn ich pip3 install --upgrade tensorflow-gpucmb eingebe, sowohl administrativ als auch normal, Could not install packages due to an EnvironmentError: [WinError 5] Access is denied: 'c:\\users\\dylan\\appdata\\local\\programs\\python\\python35\\Lib\\site-packages\\numpy\\.libs\\libopenblas.BNVRK7633HSX7YVO2TADGR4A5KEKXJAW.gfortran-win_amd64.dll' Consider using theerhalte ich diesen --user. option or check the permissions.Bitte helfen Sie mir. Kein Informatiker oder Ingenieur. Aber ich codiere zum Spaß.


15
In --usermit dem pip3Befehl installieren.
Zain Patel

6
Ich verstehe nicht, warum wir jetzt verwenden müssen --user? Denn das wird angeblich im Benutzerverzeichnis installiert, was möglicherweise nicht das ist, was Sie wollen. Install to the Python user install directory for your platform. Typically ~/.local/, or %APPDATA%\Python on Windows. (See the Python documentation for site.USER_BASE for full details.)
not2qubit

2
Ich möchte wirklich nicht in das Benutzerverzeichnis installieren und CMD als Administrator ausführen gibt mir die gleichen Fehler.
Michael Szczepaniak

Antworten:


81

Geben Sie einfach den Befehl ein, den Sie mit der Benutzerberechtigung ausführen möchten, wenn Sie die Berechtigung nicht ändern möchten:

pip3 install --upgrade tensorflow-gpu --user

4
@ Dylan Cooper, bitte akzeptiere diese Antwort, damit du nicht jahrelang nach Antworten
suchen musst

34

Führen Sie denselben Befehl mit '--user' aus.


Die Fehlermeldung schlägt Folgendes vor: "Verwenden Sie die --userOption oder überprüfen Sie die Berechtigungen." Ich habe den --user hinzugefügt und es wurde gelöst
thanos.a

Es gibt also keinen Unterschied, ob Sie den Befehl ohne oder mit '--user' verwenden? denn das, was Sie anzunehmen scheinen ...
Minuten

16

Ich habe festgestellt, dass ich CMD problemlos installieren kann, wenn ich CMD als Administrator ausführe und den Befehl ausführe. Probieren Sie es aus und geben Sie mir ein Feedback.


Dies und ein Neustart nach der Installation von Python haben bei mir funktioniert.
Ryan_S

Das hat bei mir funktioniert. Seltsam, dass selbst Windows Terminal als Administrator nicht funktioniert hat.
Howdoicode

Funktioniert bei mir. Interessanterweise funktionierte nur das Öffnen von CMD als Administrator, während das Öffnen von Git Bash als Administrator nicht funktionierte.
Shlomi A

In der Tat funktioniert dies, seltsamerweise zeigt Windows PowerShell als Administrator die Meldung "Zugriff verweigert" an und sagt, dass die Installation fehlgeschlagen ist, aber es hat tatsächlich auch die Aufgabe erfüllt
Joris,

11

Ändern Sie einfach die Zugriffsberechtigung, in der das jeweilige Paket installiert werden soll.

In meinem Fall Windows 10 :

  • gehe zu "C: \ Programme (x86) \ Python37"
  • Klicken Sie mit der rechten Maustaste auf den Python37-Ordner und klicken Sie auf Eigenschaften
  • Gehen Sie zur Registerkarte Sicherheit und erlauben Sie die vollständige Kontrolle, indem Sie auf die Schaltfläche Bearbeiten klicken.
  • Öffnen Sie erneut das neue cmd-Terminal und versuchen Sie erneut, das Paket zu installieren.


9

Ich habe den Tensorflow auf 1.4.0 aktualisiert und meinen Kopf an die Wand geschlagen, da dieser Fehler nicht behoben, sondern schließlich behoben wurde. Erraten Sie, was?

Eines meiner Python-Skripte wurde ausgeführt und verwendete Tensorflow 😂😂. Paket nach dem Schließen erfolgreich installiert. 👍


1
Selbes Problem hier.
Florin Marcus

Ich hatte wohl das gleiche Problem. Obwohl ich alle Python-Instanzen über den Task-Manager beendet habe, konnte ich sie nach einem Neustart meines Computers installieren.
mKay

7

Für mich (in Windows) musste ich das Terminal neu starten und als Administrator ausführen (wenn Sie das Pycharm-Terminal verwenden, schließen Sie Pycharm einfach und öffnen Sie es erneut als Administrator, und versuchen Sie es erneut). Damit ist das Problem behoben und die Installation ist erfolgreich.

Viel Glück


3

Verwenden Sie diesen Befehl einschließlich --User, um Tensorflow zu installieren.

pip install --ignore-installed --upgrade --user tensorflow==2.0.1

Hier ist 2.0.1 die Version von Tensorflow.


2

TYP CMD in der Suche und wenn die Eingabeaufforderung im BEST MATCH-Suchergebnis angezeigt wird, klicken Sie mit der rechten Maustaste darauf und wählen Sie "Als Administrator ausführen", wenn das Benutzersteuerungsfenster angezeigt wird, wählen Sie "Ja". Das Eingabeaufforderungsfenster wird angezeigt und Sie sollten "C: / WINDOWS / system32>" sehen.

An dieser Stelle geben Sie einfach ein, was Sie wollen, sollte funktionieren!


2

Aktualisieren von Pip in Fenstern mit -

python -m pip install --upgrade pip

und dann pip install mit der Option --user ausführen -

pip install --user Paketname

löste mein Problem.


2

Als alle genannten Methoden fehlschlugen, konnte ich die Installation durchführen, scikit-learnindem ich den Anweisungen auf der offiziellen Website https://scikit-learn.org/stable/install.html folgte .

Fehler durch Dateipfadlängenbeschränkung unter Windows

Es kann vorkommen, dass pip Pakete nicht erreicht, wenn die Standard-Pfadgrößenbeschränkung von Windows erreicht wird, wenn Python an einem verschachtelten Speicherort installiert ist, z. B. in der AppData-Ordnerstruktur im Basisverzeichnis des Benutzers:

Collecting scikit-learn
...
Installing collected packages: scikit-learn
ERROR: Could not install packages due to an EnvironmentError: [Errno 2] No such file or directory: 'C:\\Users\\username\\AppData\\Local\\Packages\\PythonSoftwareFoundation.Python.3.7_qbz5n2kfra8p0\\LocalCache\\local-packages\\Python37\\site-packages\\sklearn\\datasets\\tests\\data\\openml\\292\\api-v1-json-data-list-data_name-australian-limit-2-data_version-1-status-deactivated.json.gz'

In diesem Fall ist es möglich, dieses Limit in der Windows-Registrierung mithilfe des Regedit-Tools aufzuheben:

Geben Sie im Windows-Startmenü "regedit" ein, um regedit zu starten.

Gehe zum Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystemSchlüssel.

Bearbeiten Sie den Wert von LongPathsEnabled Eigenschaft dieses Schlüssels und setzen Sie ihn auf 1.

Installieren Sie scikit-learn neu (ignorieren Sie die vorherige fehlerhafte Installation):

pip install --exists-action=i scikit-learn


2

Das sollte funktionieren

pip install --user requests

1
Warum wird das funktionieren? Geben Sie weitere Erklärungen zu Ihrer Antwort.
DevMike01

2

Da im Fehler erwähnt wird, dass es keinen --user gibt, müssen Sie diese Schritte ausführen

  1. Öffnen Sie cmd oder anaconda Navigator
  2. Öffnen Sie Ihr Python-Installationsverzeichnis (Für den Anaconda-Navigator haben Sie den Pfad wie C: / cd Anaconda angegeben
  3. Als letztes müssen Sie Python -m pip installieren --user somepackagename

1

Oh mein. Hier gibt es so viele schlechte Antworten. Gut gemeint, aber irreführend. Ich kann normalerweise gut mit Berechtigungen unter Mac / Linux umgehen. Windows ist für mich heutzutage neu. Das ist das Problem, das ich hatte.

  1. Erstellen Sie eine virtuelle Umgebung - ok
  2. activatemein virtualenv - fehlgeschlagen. Benötigt Scope, um Powershell auszuführen. Windows ist hilfreich und gibt Ihnen genau den Befehl an, den Sie ausführen müssen, damit .ps ausgeführt werden kann. Ein bisschen wie, chmodaber mit Ausführung, scopedie ich gut finde.
  3. Wenn Sie das oben Gesagte überwunden haben und ein paar Pakete installieren, ist das in Ordnung. Bis du plötzlich nicht mehr kannst. Dann erhalten Sie diesen Berechtigungsfehler.
  4. Etwas, das Sie oder ein anderer Prozess festgelegt haben, hat die Berechtigung für den Ordner festgelegt, in dem pip Pakete installiert. dh ...site-packages/In meinem Fall vermute ich , dass es Microsoft Onedrive oder eine Erlaubnis inheritence.

Der ideale Weg ist, die Berechtigungen zu überprüfen. Das ist schwer, aber Sie sind ein Python-Entwickler, nicht wahr? Überprüfen Sie zuerst Ihren eigenen Benutzer.

  1. whoami zB mycomputer \ vangel
  2. Get-Acl <path which is an issue>
  3. Klicken Sie im Python-Installationsordner oder in Ihrer virtuellen Umgebung mit der rechten Maustaste und wechseln Sie zur Registerkarte Sicherheit. Klicken Sie auf Erweitert und überprüfen Sie die Berechtigungen. Ich habe alle geerbten Berechtigungen und andere Benutzer usw. entfernt und meine whoamiBenutzererklärungen mit vollständigen Berechtigungen hinzugefügt . dann auf alle Objekte angewendet.

Tun Sie dies nicht, ohne die folgenden Schritte zu überprüfen. Lesen Sie die Nachricht sorgfältig durch.

Es ist keineswegs die Lösung für alle Berechtigungsprobleme, die Sie betreffen können. Ich kann nur Anleitungen zur Fehlerbehebung geben und hoffe, dass Sie das Problem beheben.

Das Setzen eines --userFlags ist nirgendwo erforderlich, wenn es für Sie gut funktioniert. Aber Sie wissen immer noch nicht, was schief gelaufen ist.

Weitere Schritte: Entfernen Sie ein Paket und installieren Sie es. pip uninstall requests pip install requests Dies funktioniert, ich erhalte jedoch ein Berechtigungsproblem für ein bestimmtes Paket.

Es stellt sich heraus, dass Windows einen Berechtigungsfehler ausgibt, wenn die Datei durch einen Prozess gesperrt wird. Python meldet es als[Winerror 5] und ich konnte diese Dokumentationsreferenz sowieso nicht leicht finden. Lassen Sie uns diese Theorie testen.

Ich finde die genaue Datei, die einen Berechtigungsfehler erhält. Klicken Sie auf Löschen. Sicher genug Windows- windowEingabeaufforderung, dass es geöffnet istpython Natürlich ist es.

Ich habe end taskalle Pythons getroffen. Es hat seit 1996 funktioniert. Aber ich habe ein paar Sekunden gewartet, nur für den Fall, dass ein Prozess Python startet. ÜberprüftTask managerAlles gut .

Nachdem ich 20 Mal versagt hatte, pip dazu zu bringen, das spezifische Azureml-Paket zu installieren, war ich mir ziemlich sicher, dass dies das Problem löste.

Ich habe meine Pip-Installation ausgeführt und sie wurde einwandfrei installiert.

Moral der Geschichte: Verstehen Sie, was Sie tun, bevor Sie das Einfügen aus Stackoverflow kopieren. Alles Gute.

ps Bitte beenden Sie die Installation von Python oder seinen Paketen als Administrator. Wir haben das seit 2006 hinter uns


1

Ich habe dieses Problem gelöst, indem ich cmd im Administrationsmodus erneut geöffnet, die virtuelle Umgebung aktiviert und erneut installiert habe.

Dies war mit Tensorflow 2.3.0 in einer virtuellen Umgebung.


Dies ist weder eine Antwort noch eine Lösung für das Problem.
Juliano Costa

0

In meinem Fall habe ich McAfee deaktiviert und dann tensorflow2.0 RC erfolgreich installiert


0

Die Verwendung einer erhöhten Eingabeaufforderung wirkte Wunder. Alles was Sie tun müssen, ist zu rennen

pip install <package-name>

Mit einem Administratorrecht.


0

So habe ich dieses Problem gelöst.

Downgrade auf Python 3.6.x 64bit. Ich habe 3.6.8 64bit installiert.

installiere virtualenv per pip installiere virtualenv

Upgrade Pip auf die neueste Version, für mich ist es 19.3

Wechseln Sie zu dem Ordner, in dem Sie eine virtuelle Umgebung erstellen möchten, und geben Sie virtualenv ENV ein, nachdem Sie die virtuelle Umgebung erstellt haben. Wechseln Sie in den Unterordner \ PATH \ ENV \ Script und führen Sie activ.bat aus. Jetzt befinden Sie sich in der virtuellen Umgebung.

pip install rasa Das Problem ist, dass Tensorflow 15 64-Bit-Python mit nicht mehr als 3,6 erfordert


0

Das gleiche Problem trat auf, als ich versuchte, Tensorflow von einem Jupyter-Notebook mit Anaconda zu installieren. --user hat nicht funktioniert.

conda install tensorflow arbeitete für mich und ich musste keine Sicherheitseinstellungen ändern.


0

Versuchen Sie dies, wenn bei einem Berechtigungsfehler nichts funktioniert. Dadurch wird das Problem behoben.

sudo chown user -R env

als Beispiel für meinen Fall

sudo chown ubuntu -R venv




0

Ich musste aus einer Anforderungsdatei installieren und bekam diesen Fehler, wollte die --userOption jedoch nicht verwenden, da ich sie nicht an dem durch @ not2qubit beschriebenen Speicherort installieren wollte . Also habe ich CMD als Administrator ausgeführt und dann die Freigabe des folgenden Verzeichnisses aktiviert ( Rechtsklick> Eigenschaften> Freigabe> Freigabe ... ):

C:\Users\<my user name>\AppData\Local\Temp

Danach konnte ich ..\AppDataohne Fehler aus meiner Anforderungsdatei in das Anwendungsverzeichnis (wo ich es wollte) anstelle des verrückten Verzeichnisses installieren .


0

Ich hatte das gleiche Problem beim Hinzufügen von Flask. Verwenden Sie also einen der oben genannten Befehle.

pip install --ignore-install --upgrade --user flask

Ich habe nur eine kleine Warnung bekommen und es hat funktioniert !!

Installieren gesammelter Pakete: Klicken Sie auf MarkupSafe, Jinja2, itsdangerous, Werkzeug, flask. WARNUNG: Das Skript flask.exe wird unter 'C: \ Users \ Admin \ AppData \ Roaming \ Python \ Python38 \ Scripts' installiert, das sich nicht in PATH befindet. Erwägen Sie, dieses Verzeichnis zu PATH hinzuzufügen, oder verwenden Sie --no-warn-script-location, wenn Sie diese Warnung unterdrücken möchten. Erfolgreich installiert Jinja2-2.11.2 MarkupSafe-1.1.1 Werkzeug-1.0.1 click-7.1.2 kolben-1.1.2 itsdangerous-1.1.0 WARNUNG: Sie verwenden pip Version 20.1.1; Version 20.2 ist jedoch verfügbar. Sie sollten ein Upgrade über den Befehl 'c: \ python38 \ python.exe -m pip install --upgrade pip' in Betracht ziehen.



-1

Das sollte funktionieren.

pip install --user <package_name>
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.