ไม่สามารถติดตั้งแพ็คเกจเนื่องจาก EnvironmentError: [WinError 5] การเข้าถึงถูกปฏิเสธ:


106

ฉันมี windows 10 ฉันติดตั้ง Tensorflow เรียบร้อยแล้ว มันได้ผล. มันพูดว่า "สวัสดี 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!

Process returned 0 (0x0) execution time : 2.327 s Press any key to continue

เมื่อฉันพิมพ์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 the `--user` option or check the permissions.

กรุณาช่วยฉันออกไป. ไม่ใช่นักวิทยาศาสตร์คอมพิวเตอร์หรือวิศวกร แต่ฉันเขียนโค้ดเพื่อความสนุก


17
เพิ่ม--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

คำตอบ:


103

เพียงพิมพ์คำสั่งที่คุณต้องการดำเนินการโดยได้รับอนุญาตจากผู้ใช้หากคุณไม่ต้องการเปลี่ยนสิทธิ์:

pip3 install --upgrade tensorflow-gpu --user

5
@Dylan Cooper โปรดยอมรับคำตอบนี้เพื่อที่จะได้ไม่ต้องค้นหาคำตอบเป็นเวลาหลายปี
PolarBear10

1
@ Chayan Whyy ใช้งานได้และการติดตั้ง pip ปกติไม่ได้?
atp

38

เรียกใช้คำสั่งเดียวกันโดยใช้ '--user'


ข้อความแสดงข้อผิดพลาดแนะนำสิ่งนี้ "พิจารณาใช้--userตัวเลือกนี้หรือตรวจสอบสิทธิ์" ฉันได้เพิ่ม --user และได้รับการแก้ไขแล้ว
thanos.a

ดังนั้นจึงไม่มีความแตกต่างไม่ว่าคุณจะใช้คำสั่งโดยไม่มีหรือด้วย '--user'? เพราะนั่นคือสิ่งที่คุณคิดว่า ...
นาที

ใช่มีความแตกต่าง: แพ็คเกจจะถูกติดตั้งใน% userprofile% แทน
agcala

21

ฉันพบว่าถ้าฉันเรียกใช้ CMD ในฐานะผู้ดูแลระบบและเรียกใช้คำสั่งฉันสามารถติดตั้งได้โดยไม่มีปัญหา ลองใช้และให้ข้อเสนอแนะกับฉัน


สิ่งนี้และการรีบูตหลังจากติดตั้ง Python ใช้งานได้สำหรับฉัน
Ryan_S

สิ่งนี้ได้ผลสำหรับฉัน แปลกที่แม้แต่ Windows Terminal ในฐานะผู้ดูแลระบบก็ใช้ไม่ได้
howdoicode

เหมาะสำหรับฉัน สิ่งที่น่าสนใจคือการเปิด CMD ในขณะที่ผู้ดูแลระบบทำงานในขณะที่เปิด Git Bash เนื่องจากผู้ดูแลระบบไม่
Shlomi A

1
อันที่จริงสิ่งนี้ใช้งานได้ Windows PowerShell ที่แปลกประหลาดเนื่องจากผู้ดูแลระบบแสดงข้อความที่ถูกปฏิเสธการเข้าถึงและระบุว่าการติดตั้งล้มเหลว แต่มันก็ทำงานได้เช่นกัน
Joris

13

เพียงแค่เปลี่ยนสิทธิ์การเข้าถึงที่จะติดตั้งแพ็คเกจเฉพาะ

ในกรณีของฉันwindows10 :

  • ไปที่ "C: \ Program Files (x86) \ Python37"
  • คลิกขวาที่โฟลเดอร์ Python37 และคลิกที่คุณสมบัติ
  • ไปที่แท็บความปลอดภัยและอนุญาตการควบคุมทั้งหมดโดยคลิกปุ่มแก้ไข
  • เปิดเทอร์มินัล cmd ใหม่อีกครั้งแล้วลองติดตั้งแพ็คเกจอีกครั้ง


10

ฉันกำลังอัปเกรดเทนเซอร์โฟลว์เป็น 1.4.0 และกำลังชนหัวของฉันบนกำแพงเนื่องจากข้อผิดพลาดนี้ไม่สามารถแก้ไขได้ แต่ในที่สุดก็แก้ไขได้ เดาอะไร?

สคริปต์ python ตัวหนึ่งของฉันกำลังทำงานอยู่และใช้เทนเซอร์โฟลว์😂😂 ติดตั้งแพคเกจสำเร็จหลังจากปิด 👍


1
ปัญหาเดียวกันที่นี่
Florin Marcus

ฉันเดาว่าฉันมีปัญหาเดียวกัน แม้ว่าฉันจะฆ่าอินสแตนซ์ python ทั้งหมดผ่านตัวจัดการงาน แต่ฉันก็สามารถติดตั้งได้หลังจากรีสตาร์ทคอมพิวเตอร์
mKay

8

สำหรับฉัน (ใน windows) ฉันต้องรีสตาร์ทเทอร์มินัลและเรียกใช้ในฐานะผู้ดูแลระบบ (หากคุณใช้เทอร์มินัล pycharm เพียงปิด pycharm แล้วเปิดใหม่ในฐานะผู้ดูแลระบบจากนั้นลองอีกครั้ง) นั่นช่วยแก้ปัญหาและติดตั้งได้สำเร็จ

โชคดี


5

ในการติดตั้ง tensorflow ให้ใช้คำสั่งนี้รวมถึง --User

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

นี่ 2.0.1 คือเวอร์ชันของเทนเซอร์โฟลว์


5

สิ่งนี้ควรใช้งานได้

pip install --user requests

1
ทำไมถึงได้ผล ให้คำอธิบายเพิ่มเติมเกี่ยวกับคำตอบของคุณ
OGx09

4

พุทโธ่. มีคำตอบที่ไม่ดีมากมายที่นี่ ความหมายดี แต่ทำให้เข้าใจผิด ฉันมักจะจัดการกับสิทธิ์บน Mac / Linux ได้ดี Windows เป็นสิ่งใหม่สำหรับฉันในทุกวันนี้ นี่คือปัญหาที่ฉันมี

  1. สร้าง Virtualenv - ตกลง
  2. activateVirtualenv ของฉัน - ล้มเหลว ต้องการขอบเขตเพื่อเรียกใช้ 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 แล้วไปที่ Security Tab คลิกขั้นสูงและตรวจสอบสิทธิ์ ฉันลบสิทธิ์ที่สืบทอดมาทั้งหมดและผู้ใช้อื่น ๆ และเพิ่มความwhoamiชัดเจนของผู้ใช้ของฉันด้วยสิทธิ์เต็มรูปแบบ จากนั้นนำไปใช้กับวัตถุทั้งหมด

อย่าทำสิ่งเหล่านี้โดยไม่ยืนยันขั้นตอนด้านล่าง อ่านข้อความอย่างระมัดระวัง

ไม่ว่าจะเป็นการแก้ปัญหาการอนุญาตทั้งหมดที่อาจส่งผลกระทบต่อคุณ ฉันสามารถให้คำแนะนำเกี่ยวกับวิธีแก้ปัญหาและหวังว่าคุณจะแก้ไขได้

การตั้งค่า--userสถานะไม่จำเป็นต้องใช้ที่ใดก็ได้หากเป็นประโยชน์สำหรับคุณ แต่คุณยังไม่ทราบว่าเกิดอะไรขึ้น

ขั้นตอนเพิ่มเติม: ลองลบแพ็คเกจและติดตั้ง pip uninstall requests pip install requests วิธีนี้ใช้งานได้ แต่ฉันได้รับปัญหาการอนุญาตสำหรับแพ็กเกจเฉพาะ

ปรากฎว่า Windows แสดงข้อผิดพลาดการอนุญาตเมื่อไฟล์ถูกล็อกโดยกระบวนการ Python รายงานว่า[Winerror 5]และฉันไม่สามารถค้นหาเอกสารอ้างอิงนั้นได้โดยง่าย มาทดสอบทฤษฎีนี้กัน

ฉันพบไฟล์ที่แน่นอนที่ได้รับข้อผิดพลาดในการอนุญาต กดลบ Windows windowพรอมต์เพียงพอแน่นอนว่ามันเปิดอยู่pythonแน่นอน

ฉันตีend taskpython ทั้งหมดมันใช้งานได้ตั้งแต่ปี 1996 แต่ฉันรอสองสามวินาทีในกรณีที่กระบวนการบางอย่างกำลังเปิด python ตรวจสอบแล้วTask managerทั้งหมดที่ดี

หลังจากล้มเหลว 20 ครั้งในการรับ pip เพื่อติดตั้งแพ็คเกจ azureml ที่เฉพาะเจาะจงฉันรู้สึกค่อนข้างมั่นใจว่าสิ่งนี้สามารถแก้ไขได้

ฉันใช้งานการติดตั้ง pip และติดตั้งได้อย่างสมบูรณ์แบบ

คุณธรรมของเรื่องราว: ทำความเข้าใจสิ่งที่คุณกำลังทำก่อนคัดลอกวางจาก Stackoverflow สิ่งที่ดีที่สุด

ps โปรดหยุดการติดตั้ง Python หรือแพ็คเกจในฐานะผู้ดูแลระบบ เราผ่านมาตั้งแต่ปี 2549


2

TYPE CMD ในการค้นหาและเมื่อพรอมต์คำสั่งปรากฏในผลการค้นหา BEST MATCH ให้คลิกขวาที่ไฟล์แล้วเลือก 'Run as Administrator' เมื่อหน้าต่างควบคุมผู้ใช้ปรากฏขึ้นให้เลือก 'ใช่' หน้าต่างพรอมต์คำสั่งจะปรากฏขึ้นและคุณจะเห็น "C: / WINDOWS / system32>"

ณ จุดนี้เพียงพิมพ์สิ่งที่คุณต้องการควรใช้งานได้!


2

การอัพเกรด pip ใน windows ด้วย -

python -m pip install - อัพเกรด pip

จากนั้นรัน pip install ด้วย --user option -

pip install - ชื่อผู้ใช้ package_name

แก้ปัญหาของฉัน


2

เมื่อวิธีการทั้งหมดที่กล่าวมาล้มเหลวฉันสามารถติดตั้งได้ scikit-learnตามคำแนะนำจากเว็บไซต์อย่างเป็นทางการhttps://scikit-learn.org/stable/install.html

ข้อผิดพลาดที่เกิดจากขีดจำกัดความยาวเส้นทางไฟล์บน Windows

อาจเกิดขึ้นได้ที่ pip ไม่สามารถติดตั้งแพ็กเกจเมื่อถึงขีด จำกัด ขนาดพา ธ เริ่มต้นของ Windows หากติดตั้ง Python ในตำแหน่งที่ซ้อนกันเช่นโครงสร้างโฟลเดอร์ AppData ภายใต้โฮมไดเร็กทอรีของผู้ใช้เช่น:

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'

ในกรณีนี้คุณสามารถเพิ่มขีด จำกัด นั้นในรีจิสทรีของ Windows ได้โดยใช้เครื่องมือ regedit:

พิมพ์“ regedit” ในเมนู start ของ Windows เพื่อเปิด regedit

ไปที่ไฟล์ Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystemคีย์

แก้ไขค่าของLongPathsEnabledคุณสมบัติของคีย์นั้นและตั้งค่าเป็น 1

ติดตั้ง scikit-learn อีกครั้ง (ละเว้นการติดตั้งที่เสียก่อนหน้านี้):

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


2

ฉันแก้ไขสิ่งนี้โดยเปิด cmd อีกครั้งในโหมดการดูแลระบบเปิดใช้งาน virtual env และติดตั้งอีกครั้ง

นี่คือกับ Tensorflow 2.3.0 ในสภาพแวดล้อมเสมือน


1
นี่ไม่ใช่คำตอบหรือวิธีแก้ปัญหาสำหรับปัญหานี้
Juliano Costa

2

ตามที่กล่าวไว้ในข้อผิดพลาดว่าไม่มี - ผู้ใช้ดังนั้นคุณต้องทำตามขั้นตอนเหล่านี้

  1. เปิด cmd หรือ anaconda Navigator
  2. เปิดไดเร็กทอรีการติดตั้ง python ของคุณ (สำหรับ anaconda navigator คุณได้ระบุพา ธ เช่น C: / cd Anaconda
  3. สุดท้ายคือการติดตั้ง python -m pip --user somepackagename

1

ฉันประสบปัญหาเดียวกันเมื่อพยายามติดตั้งเทนเซอร์โฟลว์จากสมุดบันทึก jupyter โดยใช้ Anaconda - ผู้ใช้ไม่ทำงาน

conda install tensorflow ได้ผลสำหรับฉันและฉันไม่ต้องเปลี่ยนการตั้งค่าความปลอดภัยใด ๆ



1

ผมจำเป็นต้องมีการติดตั้งจากไฟล์ความต้องการและได้รับข้อผิดพลาดนี้ แต่ไม่ต้องการที่จะใช้--userตัวเลือกเพราะผมไม่ได้ต้องการที่จะติดตั้งสถานที่อธิบายโดย@ not2qubit ดังนั้นฉันจึงเรียกใช้ CMD ในฐานะผู้ดูแลระบบจากนั้นเปิดใช้งานการแบ่งปันไดเรกทอรีต่อไปนี้ ( คลิกขวา> คุณสมบัติ> การแชร์> แชร์ ... ):

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

หลังจากทำสิ่งนี้ฉันสามารถติดตั้งจากไฟล์ข้อกำหนดของฉันลงในไดเร็กทอรีแอปพลิเคชัน (ที่ฉันต้องการ) แทนไดร์บ้า..\AppDataโดยไม่มีข้อผิดพลาด


ทางออกที่น่าสนใจ โดยทั่วไปฉันจะไม่ยุ่งกับคุณสมบัติของ Windows โดยเฉพาะอย่างยิ่งสำหรับการแบ่งปันเนื่องจากอาจทำให้เกิดบริการทุกประเภทหากไม่ระมัดระวัง
not2qubit

1

ลองใช้ใน windows:

pip ติดตั้ง -U <Package_Name>




0

ในกรณีของฉันฉันปิดใช้งาน McAfee และติดตั้ง tensorflow2.0 RC เรียบร้อยแล้ว


0

การใช้พรอมต์คำสั่งที่ยกระดับทำให้เกิดความมหัศจรรย์ สิ่งที่คุณต้องทำคือวิ่ง

pip install <package-name>

ด้วยสิทธิ์ระดับผู้ดูแลระบบ


0

นี่คือวิธีที่ฉันแก้ไขปัญหานี้

ดาวน์เกรดเป็น python 3.6.x 64 บิต ฉันติดตั้ง 3.6.8 64 บิต

ติดตั้ง Virtualenv โดย pip ติดตั้ง Virtualenv

อัพเกรด pip เป็นเวอร์ชันล่าสุดสำหรับฉันมันเป็น 19.3

ไปที่โฟลเดอร์ที่คุณต้องการสร้างสภาพแวดล้อมเสมือนและพิมพ์ Virtualenv ENV หลังจากสร้างสภาพแวดล้อมเสมือนไปที่โฟลเดอร์ย่อย\ PATH \ ENV \ Scriptและดำเนินการ enable.bat ตอนนี้คุณจะอยู่ในสภาพแวดล้อมเสมือนจริง

pip install rasa ปัญหาคือ tensorflow 15 ต้องใช้ python 64 bit ที่มีไม่เกิน 3.6


0

ลองทำเช่นนี้หากไม่มีข้อผิดพลาดในกรณีที่ได้รับอนุญาตสิ่งนี้จะแก้ไขได้

sudo chown user -R env

เป็นตัวอย่างสำหรับกรณีของฉัน

sudo chown ubuntu -R venv


คำถามถ้าสำหรับระบบ windows ไม่มี sudo ใน windows powershell หรือ cmd
Touten


0

ฉันมีปัญหาเดียวกันในขณะที่เพิ่ม Flask ดังนั้นใช้หนึ่งในคำสั่งดังกล่าว

pip install --ignore-installed - อัพเกรด - ขวดผู้ใช้

มีเพียงคำเตือนเล็กน้อยและได้ผล !!

การติดตั้งแพ็กเกจที่รวบรวม: คลิก MarkupSafe, Jinja2, itsdangerous, Werkzeug, flask คำเตือน: สคริปต์ flask.exe ถูกติดตั้งใน 'C: \ Users \ Admin \ AppData \ Roaming \ Python \ Python38 \ Scripts' ซึ่งไม่ได้อยู่ใน PATH พิจารณาเพิ่มไดเร็กทอรีนี้ใน 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'


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.