EnvironmentError로 인해 패키지를 설치할 수 없음 : [WinError 5] 액세스가 거부되었습니다.


88

Windows 10이 있습니다. Tensorflow 설치를 완료했습니다. 효과가있다. "Hello Tensorflow!"라고되어 있습니다. 그러나 이전에는이 ​​모든 것이 있습니다.

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!

프로세스 반환 0 (0x0) 실행 시간 : 2.327s 계속하려면 아무 키나 누르십시오.

pip3 install --upgrade tensorflow-gpucmb를 입력하면 관리 및 일반 모두이 메시지가 나타납니다 .-- 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 theuser option or check the permissions.제발 도와주세요. 컴퓨터 과학 자나 엔지니어가 아닙니다. 하지만 저는 재미로 코딩합니다.


15
추가 --user받는 pip3설치 명령.
— Zain Patel

6
왜 우리가 지금 사용해야하는지 이해가 안 돼요 --user? 그것은 아마도 사용자 디렉토리에 설치되므로 원하는 것이 아닐 수도 있습니다. 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
사용자 디렉터리에 설치하고 싶지 않고 CMD를 관리자로 실행하면 동일한 오류가 발생합니다.
— Michael Szczepaniak

답변:


80

권한을 변경하지 않으려면 사용자 권한으로 실행할 명령을 입력하십시오.

pip3 install --upgrade tensorflow-gpu --user

3
@Dylan Cooper이 답변을 수락하여 수년간의 답변을 파헤칠 필요가 없도록하십시오
— PolarBear10

34

'--user'를 사용하여 동일한 명령을 실행하십시오.


오류 메시지는 " --user옵션 사용을 고려 하거나 권한을 확인하십시오 "를 제안합니다 . 나는 --user를 추가하고 그것을 해결되었다
— thanos.a

따라서 명령을 '--user'없이 사용하든 사용하든 차이가 없습니까? 왜냐하면 당신이 가정하는 것처럼 ...
— 분

16

CMD를 관리자 권한으로 실행하고 명령을 실행하면 문제없이 설치할 수 있다는 것을 알았습니다. 그것을 시도하고 나에게 약간의 피드백을주십시오.


이것과 Python 설치 후 재부팅이 저에게 효과적이었습니다.
— Ryan_S

이것은 나를 위해 일했습니다. 관리자로서의 Windows 터미널조차도 작동하지 않았다는 것이 이상합니다.
— howdoicode

나를 위해 작동합니다. 흥미롭게도 관리자 권한으로 CMD를 여는 것만이 작동했지만 관리자 권한으로 Git Bash를 여는 것은 작동하지 않았습니다.
— Shlomi A

실제로 이것은 작동합니다. 이상하게도 Windows PowerShell (관리자)은 액세스 거부 메시지를 표시하고 설치가 실패했다고 말합니다.하지만 실제로도 작업을 수행했습니다
— Joris

11

특정 패키지가 설치 될 액세스 권한을 변경하기 만하면됩니다.

제 경우에는 windows10 :

  • "C : \ Program Files (x86) \ Python37"로 이동합니다.
  • Python37 폴더를 마우스 오른쪽 버튼으로 클릭하고 속성을 클릭하십시오.
  • 보안 탭으로 이동하고 편집 버튼을 클릭하여 모든 권한을 허용합니다.
  • 다시 새 cmd 터미널을 열고 패키지를 다시 설치하십시오.


9

나는 tensorflow를 1.4.0으로 업그레이드하고 있었고이 오류가 해결되지 않았기 때문에 벽에 머리를 부딪 혔지만 마침내 해결되었습니다. 뭔지 맞춰봐?

내 파이썬 스크립트 중 하나가 실행 중이고 tensorflow 😂😂를 사용하고있었습니다. 패키지를 닫은 후 성공적으로 설치되었습니다. 👍


1
여기에도 같은 문제가 있습니다.
— Florin Marcus

나는 같은 문제가 있었던 것 같다. 작업 관리자를 통해 모든 Python 인스턴스를 종료했지만 컴퓨터를 다시 시작한 후에 설치할 수있었습니다.
— mKay

7

나를 위해 (Windows에서) 터미널을 다시 시작하고 관리자로 실행해야했습니다 (pycharm 터미널을 사용하는 경우 pycharm을 닫고 관리자로 다시 연 다음 다시 시도하십시오). 문제가 해결되고 설치가 성공했습니다.

행운을 빕니다


3

tensorflow를 설치하려면 --User를 포함하여이 명령을 사용하십시오.

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

여기서 2.0.1은 tensorflow의 버전입니다.


2

검색에서 CMD를 입력하고 BEST MATCH 검색 결과에 명령 프롬프트가 나타나면 마우스 오른쪽 버튼으로 클릭하고 사용자 제어 창이 나타나면 '관리자 권한으로 실행'을 선택하고 '예'를 선택합니다. 명령 프롬프트 창이 나타나고 "C : / WINDOWS / system32>"가 표시됩니다.

이 시점에서 원하는 것을 입력하기 만하면됩니다.


2

Windows에서 pip 업그레이드-

python -m pip install --upgrade pip

그런 다음 --user 옵션으로 pip install 실행-

pip install --user package_name

내 문제를 해결했습니다.


2

언급 된 모든 방법이 실패했을 때 scikit-learn공식 사이트 https://scikit-learn.org/stable/install.html 의 지침에 따라 설치할 수있었습니다 .

Windows에서 파일 경로 길이 제한으로 인한 오류

Python이 사용자 홈 디렉터리 아래의 AppData 폴더 구조와 같은 중첩 된 위치에 설치된 경우 Windows의 기본 경로 크기 제한에 도달하면 pip가 패키지를 설치하지 못할 수 있습니다. 예를 들면 다음과 같습니다.

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'

이 경우 regedit 도구를 사용하여 Windows 레지스트리에서 해당 제한을 해제 할 수 있습니다.

Windows 시작 메뉴에 "regedit"를 입력하여 regedit를 시작합니다.

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem키로 이동하십시오 .

LongPathsEnabled해당 키 의 속성 값을 편집하고 1로 설정합니다.

scikit-learn을 다시 설치하십시오 (이전 중단 된 설치 무시) :

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


2

이것은 작동합니다

pip install --user requests

1
왜 이것이 작동할까요? 답변에 대한 자세한 설명을 제공하십시오.
— DevMike01

2

오류에서 언급했듯이 --user가 없으므로 다음 단계를 따라야합니다.

  1. cmd 또는 anaconda Navigator를 엽니 다.
  2. Python 설치 디렉토리를 엽니 다 (anaconda navigator의 경우 C : / cd Anaconda와 같은 경로를 지정했습니다.
  3. 마지막으로 python -m pip install --user somepackagename

1

어머. 여기에는 잘못된 답변이 너무 많습니다. 의미는 있지만 오해의 소지가 있습니다. 저는 보통 Mac / Linux에서 권한을 다루는 데 문제가 없습니다. Windows는 요즘 나에게 새로운 것입니다. 이것이 내가 가진 문제입니다.

  1. virtualenv 만들기-확인
  2. activate내 virtualenv-실패했습니다. PowerShell을 실행하려면 범위가 필요합니다. Windows는 도움이되며 .ps를 실행하기 위해 실행해야하는 명령을 정확히 알려줍니다. 일종의 비슷 chmod하지만 실행 scope이 좋다고 생각합니다.
  3. 이제 위의 과정을지나 몇 개의 패키지를 설치하면 괜찮습니다. 갑자기 할 수 없을 때까지. 그런 다음이 권한 오류가 발생합니다.
  4. 사용자 또는 다른 프로세스가 pip가 패키지를 설치하는 폴더에 대한 권한을 설정했습니다. 즉, ...site-packages/제 경우에는 OneDrive 또는 일부 권한 상속이 의심됩니다.

앞으로의 이상적인 방법은 권한을 확인하는 것입니다. 이것은 어렵지만 Python 개발자는 아닙니다! 먼저 자신의 사용자를 확인하십시오.

  1. whoami 예 : mycomputer \ vangel
  2. Get-Acl <path which is an issue>
  3. Python 설치 폴더 또는 virtualenv에서 마우스 오른쪽 버튼을 클릭하고 보안 탭으로 이동합니다. 고급을 클릭하고 권한을 검토하십시오. 상속 된 모든 권한 및 다른 사용자 등을 제거 whoami하고 전체 권한으로 내 사용자를 명시 적으로 추가했습니다 . 그런 다음 모든 개체에 적용됩니다.

아래 단계를 확인하지 않고이를 수행하지 마십시오. 메시지를주의 깊게 읽으십시오.

결코 영향을 미칠 수있는 모든 권한 문제에 대한 해결책이 아닙니다. 문제를 해결하는 방법에 대한 안내 만 제공 할 수 있으며 문제가 해결되기를 바랍니다.

설정 --user플래그는 당신에게 잘 작동한다면 어디에도 필요하지 않습니다. 그러나 당신은 여전히 ​​무엇이 잘못되었는지 모릅니다.

추가 단계 : 패키지를 제거하고 설치해보십시오. pip uninstall requests pip install requests 이것은 작동하지만 특정 패키지에 대한 권한 문제가 있습니다.

Windows는 파일이 프로세스에 의해 잠길 때 권한 오류를 제공합니다. 파이썬은 그것을보고하고 [Winerror 5]어쨌든 그 문서 참조를 쉽게 찾을 수 없었습니다. 이 이론을 테스트 해 보겠습니다.

권한 오류가 발생한 정확한 파일을 찾습니다. 삭제를 누르십시오. 물론 window그것의 열려있는 충분한 Windows 프롬프트입니다 python.

나는 end task모든 파이썬을 쳤다 . 그것은 1996 년부터 작동했다. 그러나 어떤 프로세스가 파이썬을 시작하는 경우를 대비하여 몇 초를 기다렸다. Task manager모두 잘 확인했습니다 .

특정 azureml 패키지를 설치하기 위해 pip를 얻는 데 20 번 실패한 나는 이것이 해결되었다고 확신했습니다.

내 pip 설치를 실행했는데 완벽하게 설치되었습니다.

스토리의 도덕 : Stackoverflow에서 복사 붙여 넣기 전에 수행중인 작업을 이해합니다. 모두 제일 좋다.

ps 관리자 권한으로 Python 또는 해당 패키지 설치를 중지하십시오. 2006 년 이후로


1

관리 모드에서 cmd를 다시 열고 가상 환경을 활성화 한 다음 다시 설치하여이 문제를 해결했습니다.

이것은 가상 환경에서 Tensorflow 2.3.0을 사용했습니다.


이것은 문제에 대한 답이나 해결책이 아닙니다.
— Juliano Costa

0

제 경우에는 McAfee를 비활성화 한 다음 tensorflow2.0 RC를 성공적으로 설치했습니다.


0

상승 된 명령 프롬프트를 사용하는 것은 놀라운 일이었습니다. 당신이해야 할 일은 실행

pip install <package-name>

관리 권한이 있습니다.


0

이것이 제가이 문제를 해결 한 방법입니다.

python 3.6.x 64 비트로 다운 그레이드합니다. 3.6.8 64 비트를 설치했습니다.

pip로 virtualenv 설치 virtualenv 설치

pip를 최신 버전으로 업그레이드하십시오.

가상 환경을 만들려는 폴더로 이동하여 가상 환경을 만든 후 virtualenv ENV를 입력하고 하위 폴더 \ PATH \ ENV \ Script 로 이동 하여 activate.bat를 실행합니다. 이제 가상 환경에있게됩니다.

pip install rasa 문제는 tensorflow 15에 3.6 이하의 64 비트 파이썬이 필요하다는 것입니다.


0

Anaconda를 사용하여 jupyter 노트북에서 tensorflow를 설치하려고 할 때 동일한 문제가 발생했습니다. -사용자가 작동하지 않았습니다.

conda install tensorflow 나를 위해 일했고 보안 설정을 변경할 필요가 없었습니다.


0

권한 오류가 발생해도 작동하지 않는 경우이 방법을 시도하면 해결됩니다.

sudo chown user -R env

내 경우의 예로서

sudo chown ubuntu -R venv




0

요구 사항 파일 --user에서 설치 해야하는데이 오류가 발생했지만 @ not2qubit에 설명 된 위치에 설치하고 싶지 않았기 때문에 옵션 을 사용하고 싶지 않았습니다 . 그래서 CMD를 관리자 권한 으로 실행 한 다음 다음 디렉터리의 공유 를 활성화 했습니다 ( 오른쪽 클릭> 속성> 공유> 공유 ... ).

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

이 작업을 수행 한 후, 내 요구 사항 파일 ..\AppData에서 오류없이 미친 디렉터리 대신 응용 프로그램 디렉터리 (원하는 위치)에 설치할 수있었습니다 .


0

Flask를 추가하는 동안 동일한 문제가 발생했습니다. 따라서 위의 명령 중 하나를 사용했습니다.

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

작은 경고 만 받고 작동했습니다 !!

수집 된 패키지 설치 : click, MarkupSafe, Jinja2, itsdangerous, Werkzeug, flask 경고 : flask.exe 스크립트는 PATH에없는 'C : \ Users \ Admin \ AppData \ Roaming \ Python \ Python38 \ Scripts'에 설치됩니다. 이 디렉토리를 PATH에 추가하거나이 경고를 표시하지 않으려면 --no-warn-script-location을 사용하십시오. Jinja2-2.11.2 MarkupSafe-1.1.1 Werkzeug-1.0.1 click-7.1.2 flask-1.1.2 itsdangerous-1.1.0을 성공적으로 설치했습니다. 경고 : pip 버전 20.1.1을 사용하고 있습니다. 그러나 버전 20.2를 사용할 수 있습니다. 'c : \ python38 \ python.exe -m pip install --upgrade pip'명령을 통한 업그레이드를 고려해야합니다.


0

Windows에서 이것을 시도하십시오.

pip install -U <패키지 _ 이름>


-1

작동합니다.

pip install --user <package_name>
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.