Pip отказано в доступе windows 10

Обновлено: 02.07.2024

Я пытаюсь выполнить пункт Установить mitmproxy на Windows, но я постоянно получаю доступ запрещен, даже с cmd и PowerShell с помощью Запуск от имени администратора .

Как я могу сделать эту работу?

В случае с Windows, в cmd попытке запустить пункт Установить через исполняемый файл в Python

это должно работать, по крайней мере, это сработало для меня, для другой установочный пакет.

Если вы откроете " ЦМД " в качестве администратора; тогда вы можете сделать следующее:

Если Python установлен в ваш "путь", то:

Примечание:- Я установил питон через шоколадный

Одна дополнительная вещь, которая не описана в предыдущих ответах и которые часто вызывают проблемы в Windows и остановило меня от установки некоторых пакетов, несмотря на запуск в качестве администратора заключается в том, что вы получите *тот же отказано в доступе ошибка, если есть другая программа, которая использует некоторые файлы (или пункт Установить ) пытаются открыть. Это очень глупо и"функция" из окна, которое всплывает много раз, например, при попытке переместить некоторые файлы.

Кроме того, я понятия не имею, как выяснить, какая программа блокирует конкретный файл, так проще Ting для того чтобы перезагрузиться и сделать установку, прежде чем что-либо начинать, особенно перед запуском, например, Spyder или любой другой Python на основе программного обеспечения. Вы также можете попробовать, чтобы закрыть все программы, но это может быть хитрым, чтобы знать, какой на самом деле держит файл. Для каталога, например, достаточно того, что у вас есть окно Проводника открыть в этом каталоге.

Открыть cmd с "Запуск от имени администратора" и выполнить команду типун установить mitmproxy . Он будет установить его.

Это работает для меня.

Как: питон -м пункт Установить и"включает в себя-1.15.4+мкл-cp36-cp36m-win_amd64.колесо" и это --User

Обратите внимание, что двойные кавычки не необходимо, вы можете указать имя пакета, который вы хотите установить.

Еще вы должны попробовать запустить командную строку Запуск от имени администратора а потом попробовать установить Пип. Он должен работать либо.

Я пытаюсь развернуть пакет Python с pip в виртуальной среде на компьютере с Ubuntu, но сталкиваюсь с проблемой, связанной с разрешениями. Например:

ошибка: не удалось создать '/home/test/virtualenvs/TestVirtualEnv/lib/python3.3/site-packages/markdown2.py': разрешение отклонено

Я не могу sudo , так как он установит пакет глобально, а не в виртуальной среде. Я chown ed site-packages ; ls показывает только каталоги, связанные с easy_install , pip и setuptools , и ничего не относится к уценке.

Как развернуть пакет в виртуальной среде с pip без ошибок, связанных с разрешениями?

Проблемы с правами доступа virtualenv могут возникнуть, когда вы создаете virtualenv как sudo , а затем работаете без sudo в virtualenv .

Как выяснилось в комментарии к вашему вопросу, решение здесь состоит в том, чтобы создать virtualenv без sudo , чтобы иметь возможность работать (особенно запись) в нем без sudo .

Если вы создали виртуальную среду, используя root, используйте эту команду

Он даст вам root-доступ и затем активирует вашу виртуальную среду, используя эту

Если вы создали virtualenv от имени пользователя root, выполните следующую команду:

Это, вероятно, решит вашу проблему.

Вы не активировали виртуальную среду перед использованием pip.

Попробуйте это с:

А затем используйте pip -r needs.txt в вашей главной папке

Я не создал свой virtualenv с помощью sudo. Таким образом, ответ Себастьяна не относится ко мне. Мой проект называется utils . Я проверил utils каталог и увидел это:

Как видите, utils.egg-info принадлежит root , а не macuser . Вот почему он дал мне permission denied ошибку. Мне также пришлось удалить /Users/macuser/.virtualenvs/armoury/lib/python2.7/site-packages/utils.egg-link , так как он был создан root . Я сделал pip install -e . снова после их удаления, и это сработало.

У меня также было это (случайно) после создания нового венва в существующей виртуальной среде. простой способ диагностировать это состоит в том, чтобы увидеть, где python имеет символическую ссылку, т.е. выполнить:

И убедитесь, что он указывает на соответствующий двоичный файл Python. Для большинства систем это будет /usr/bin/python или /usr/bin/python3 . в то время как если он указывает на существующую виртуальную среду, это будет что-то вроде /home/youruser/somedir/bin/python . если это последнее, то я бы предложил воссоздать вену, убедившись, что вы не «внутри» какого-либо существующего virtualenv (т.е. выполните deactivate )

При создании virtualenv, если вы используете sudo, каталог создается с правами суперпользователя. Так что при попытке установить пакет с пользователем, не являющимся пользователем sudo, у вас не будет разрешения на установку в него. Поэтому всегда создавайте virtualenv без sudo и устанавливайте без sudo.

Вы также можете скопировать пакеты, установленные на глобальном питоне, в virtualenv.

В моем случае я использовал mkvirtualenv , но не сказал, что собираюсь использовать python3. Я получил эту ошибку:

Я пытаюсь запустить pip install mitmproxy на Windows, но я получаю доступ запрещен, даже cmd и с PowerShell помощью Run as Administrator опции.

Как я могу заставить это работать?

В случае окон в cmd попробуйте запустить установку pip с помощью исполняемого файла python

это должно работать, по крайней мере, у меня это сработало для установки другого пакета.

По какой-то причине права доступа к временным файлам были для моего пользователя меньше, чем полный контроль. Этот путь изменил python -m ситуацию. Знаем ли мы, почему это работает? А не через PowerShell?

Измените разрешения безопасности папки установки Python:

  1. Откройте оболочку Python
  2. Перейти в диспетчер задач
  3. Найдите процесс Python
  4. Щелкните правой кнопкой мыши и откройте местоположение
  5. Папка откроется в проводнике, перейдите в каталог
  6. Щелкните папку правой кнопкой мыши и выберите свойства
  7. Перейдите на вкладку безопасности и нажмите "изменить".
  8. Добавьте всех и дайте им разрешение на чтение и запись.
  9. Сохраните изменения

Если вы открываете cmd как админ; тогда вы можете сделать следующее:

Если в вашем установлен Python PATH , то:

Мне пришлось сделать это как для ВСЕХ ПАКЕТОВ ПРИЛОЖЕНИЙ, так и для пользователей, но потом это сработало. Альтернативный путь с аналогичными усилиями: 1) Установить Linux 2) sudo pip install foo @Chronicle Вы действительно разрешили всем читать и писать в профили пользователей? Если да, то это довольно плохая идея (очень плохая). @Richard Как добавление разрешений на чтение и запись в каталоги Python может решить проблему с отказом в разрешении в temp каталоге пользователя ? Я бы сказал, что это способ выполнения pip ( python -m pip вместо того, pip как предложил @nayak), что помогает, эти 9 шагов до этого, скорее всего, не имеют значения (поскольку на самом деле это не имеет никакого смысла).

Лично я обнаружил, что открытие cmd от имени администратора и затем запуск, python -m pip install mitproxy похоже, решает мою проблему.

Примечание: - Я установил python через chocolatey

если вы работаете cmd как администратор, вы сможете работать как обычно pip install [package] . Все равно у меня работало.

Еще одна вещь, которая не была рассмотрена в предыдущих ответах и ​​которая часто вызывает проблемы в Windows и мешает мне установить какой-либо пакет, несмотря на то, что я запущен как администратор, заключается в том, что вы получаете ту же ошибку, в которой отказано в разрешении, если есть другая программа, которая использует некоторые из файлов, которые вы (или pip install ) попробуйте получить доступ. Это действительно дурацкая «особенность» Windows, которая всплывает много раз, например, при попытке переместить какие-то файлы.

Кроме того, я понятия не имею, как определить, какая программа блокирует конкретный файл, поэтому проще всего перезагрузиться и выполнить установку перед запуском чего-либо, в частности перед запуском, например, Spyder или любого другого программного обеспечения на основе Python. Вы также можете попробовать закрыть все программы, но может быть сложно узнать, какая из них на самом деле содержит файл. Например, для каталога достаточно, чтобы в этом каталоге было открыто окно проводника.

Да, помогло мне! Я работал в Git Bash, Pycharm Terminal и Windows Terminal одновременно, после закрытия двух из трех все заработало.

Откройте cmd с помощью «Запуск от имени администратора» и выполните команду pip install mitmproxy . Он его установит.

As, я устанавливаю через Anaconda Prompt. В моем случае это даже не работало с python -m pip install Then, я добавляю это

Подобно: python -m pip install "numpy-1.15.4+mkl-cp36-cp36m-win_amd64.whl" --user

Обратите внимание, что двойные кавычки не нужны, вы можете указать имя пакета, который хотите установить.

Другой вариант - запустить командную строку от имени администратора, а затем попробовать установить pip. Он тоже должен работать.

Это помогло мне установить пакеты Python (в данном случае sympy) в школе. Спасибо! Лучшее решение, когда у вас нет прав администратора в вашей системе.

Попробуйте дать разрешение на полный контроль над папкой python.

Найдите корневой каталог python -> щелкните правой кнопкой мыши -> свойства -> безопасность -> изменить -> предоставить пользователям полный доступ -> да и дождитесь завершения процесса.

Я пытаюсь запустить pip install mitmproxy в Windows, но я все время отказываюсь от доступа, даже с cmd и PowerShell с помощью параметра Run as Administrator .

Как я могу сделать эту работу?

В случае окон, в cmd попробуйте запустить pip install с помощью исполняемого файла python

это должно работать, по крайней мере, это работало для меня для другой установки пакета.

По какой-то причине разрешения для временного файла были меньше, чем полный контроль для моего пользователя. Прохождение этого маршрута через python -m имело значение.

Измените права на доступ к папке для установки Python:

  • Откройте оболочку Python
  • Перейдите в диспетчер задач
  • Найти процесс python
  • Щелкните правой кнопкой мыши и откройте папку
  • Папка откроется в проводнике, поднимите каталог
  • Щелкните правой кнопкой мыши папку и выберите свойства
  • Перейдите на вкладку безопасности и нажмите "Изменить"
  • Добавьте всех и дайте им разрешение на чтение и запись.
  • Сохраните изменения

Если вы открываете cmd как admin; то вы можете сделать следующее:

Если Python установлен в вашем PATH , то:

Я должен был сделать это для ВСЕХ ПАКЕТОВ ПРИЛОЖЕНИЙ и Пользователей, но тогда это работало. Альтернативный маршрут с подобным усилием: 1) Установите Linux 2) sudo pip install foo @Chronicle Chronicle Вы действительно позволили всем читать и писать в профили пользователей? Если да, это довольно плохая идея (очень плохая). @Richard Как добавление разрешений на чтение и запись в каталогах Python может решить проблему с отказом в доступе во temp каталоге пользователя? Я бы сказал, что это способ выполнения pip ( python -m pip вместо простого pip как предложил @nayak, что помогает, эти 9 шагов, скорее всего, не имеют значения (так как в действительности это не имеет никакого смысла). Это сработало для меня только после добавления прав для моего авторизованного пользователя. Спасибо!

Лично я обнаружил, что, открыв cmd как admin, запустите python -m pip install mitproxy кажется, исправляет мою проблему.

Примечание: - Я установил python через chocolatey

если вы запустите cmd от имени администратора, вы сможете просто выполнить обычную pip install [package] . Все равно у меня сработало.

Откройте cmd с помощью "Запуск от имени администратора" и выполните команду pip install mitmproxy . Он установит его.

Еще одна вещь, которая не была рассмотрена в предыдущих ответах и ​​часто вызывала проблемы в Windows, и помешала мне установить какой-либо пакет, несмотря на то, что он запускается как admin, так это то, что вы получаете ту же прав, что и отказ, если это еще одна программа, в которой используются некоторые файлы, к которым вы (или pip install ) пытаетесь получить доступ. Это действительно глупая "функция" Windows, которая появляется много раз, например. при попытке перемещения некоторых файлов.

Кроме того, я не знаю, как определить, какая программа блокирует конкретный файл, поэтому проще всего выполнить перезагрузку и выполнить установку перед запуском чего-либо, особенно перед запуском, например. Spyder или любое другое программное обеспечение на базе Python. Вы также можете попытаться закрыть все программы, но может быть сложно узнать, какой из них фактически содержит файл. Например, для каталога достаточно, чтобы в этом каталоге открывалось окно проводника.

В моем случае причина заключалась в том, что открылся блокнот jupyter, который импортировал соответствующую библиотеку; Корневая причина кажется оконной ошибкой из-за того, что файл открыт/используется (см. также ответ @Robert и рекомендацию перезагрузки).

Итак, еще одна вещь для проверки заключается в том, что никакие другие процессы python не выполняются.

Читайте также: