Не удалось установить пакеты из-за EnvironmentError: [Errno 13]

В моем терминале MacOS Mojave я хотел установить пакет python с pip. В конце говорится:

You are using pip version 10.0.1, however version 18.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

Поэтому я хотел обновить pip с помощью данной команды, но получил ошибку:

Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: 
'/Library/Python/2.7/site-packages/pip-18.0-py2.7.egg/EGG-INFO/PKG-INFO'
Consider using the '--user' option or check the permissions.

Я не очень понимаю, что делать сейчас. Также я понял, что в сообщении об ошибке написано Python 2.7, но у меня есть и я хочу использовать только Python 3.

Ответ 1

Если вы хотите использовать python3+ для установки пакетов, вам нужно использовать pip3 install packageName

И чтобы решить errno 13, вы должны добавить --user в конце

pip3 install packageName --user

EDIT:

Для любого проекта в Python настоятельно рекомендуется работать на Виртуальной среде, это инструмент, который помогает разделить зависимости, требуемые для различных проектов, путем создания для них изолированных виртуальных сред Python.

Чтобы создать его с помощью python3+, вы должны использовать следующую команду:

virtualenv enviroment_name -p python3

А затем вы работаете над этим, просто активировав его:

source enviroment_name/bin/activate

После активации виртуальной среды имя вашей виртуальной среды появится в левой части терминала. Это позволит вам узнать, что виртуальная среда в настоящее время активна. Теперь вы можете установить зависимости, связанные с проектом, в этой виртуальной среде, просто используя pip.

pip install package_name

Ответ 2

Что касается команды permissions, попробуйте использовать sudo перед командой терминала:

sudo pip install --upgrade pip

Sudo - это программа, которая позволяет запускать команду с привилегиями суперпользователя.

Что касается python, попробуйте запустить pip как исполняемый файл, например:

python3.6 -m pip install <package>

Ответ 3

Я делал те же ошибки, потом понял, что создал свою виртуальную среду от имени пользователя root. Он защищен от записи, поэтому, пожалуйста, проверьте, защищена ли ваша виртуальная среда от записи. сделай новый венв и попробуй еще раз

Ответ 4

Ответ в сообщении об ошибке. В прошлом вы или процесс выполняли команду sudo pip, в результате чего некоторые каталоги в /Library/Python/2.7/site-packages/... имели разрешения, которые делают его недоступным для текущего пользователя.

Затем вы pip install whatever что зависит от другой вещи.

Поэтому, чтобы исправить это, посетите /Library/Python/2.7/site-packages/... и найдите каталог с правами root или not-your-user и удалите, затем переустановите эти пакеты, или просто навязывайте права владения пользователю к кому должен быть доступ.

Ответ 5

Я получил ту же ошибку, когда пытался установить пакет (классная фляга). Я сделал ошибку, установив anaconda от имени пользователя root. Я сменил владельца установленной папки anaconda и смог успешно установить пакет.

Используйте команду chown с параметром -R, чтобы рекурсивно изменить владельца установленной папки anaconda.

chown -R owner:group/path/to/anaconda

Здесь owner - ваше имя пользователя, а group - имя группы.

Ответ 6

У меня тоже была такая же проблема, я пробовал много разных командных строк, эта у меня работала:

Пытаться:

    conda install py-xgboost

Вот что я получил:

Collecting package metadata: done
Solving environment: done

## Package Plan ##

  environment location: /home/simplonco/anaconda3

  added / updated specs:
    - py-xgboost


The following packages will be downloaded:

    package                    |            build
    ---------------------------|-----------------
    _py-xgboost-mutex-2.0      |            cpu_0           9 KB
    ca-certificates-2019.1.23  |                0         126 KB
    certifi-2018.11.29         |           py37_0         146 KB
    conda-4.6.2                |           py37_0         1.7 MB
    libxgboost-0.80            |       he6710b0_0         3.7 MB
    mkl-2019.1                 |              144       204.6 MB
    mkl_fft-1.0.10             |   py37ha843d7b_0         169 KB
    mkl_random-1.0.2           |   py37hd81dba3_0         405 KB
    numpy-1.15.4               |   py37h7e9f1db_0          47 KB
    numpy-base-1.15.4          |   py37hde5b4d6_0         4.2 MB
    py-xgboost-0.80            |   py37he6710b0_0         1.7 MB
    scikit-learn-0.20.2        |   py37hd81dba3_0         5.7 MB
    scipy-1.2.0                |   py37h7c811a0_0        17.7 MB
    ------------------------------------------------------------
                                           Total:       240.0 MB

The following NEW packages will be INSTALLED:

  _py-xgboost-mutex  pkgs/main/linux-64::_py-xgboost-mutex-2.0-cpu_0
  libxgboost         pkgs/main/linux-64::libxgboost-0.80-he6710b0_0
  py-xgboost         pkgs/main/linux-64::py-xgboost-0.80-py37he6710b0_0

The following packages will be UPDATED:

  ca-certificates     anaconda::ca-certificates-2018.12.5-0 --> pkgs/main::ca-certificates-2019.1.23-0
  mkl                                            2019.0-118 --> 2019.1-144
  mkl_fft                              1.0.4-py37h4414c95_1 --> 1.0.10-py37ha843d7b_0
  mkl_random                           1.0.1-py37h4414c95_1 --> 1.0.2-py37hd81dba3_0
  numpy                               1.15.1-py37h1d66e8a_0 --> 1.15.4-py37h7e9f1db_0
  numpy-base                          1.15.1-py37h81de0dd_0 --> 1.15.4-py37hde5b4d6_0
  scikit-learn                        0.19.2-py37h4989274_0 --> 0.20.2-py37hd81dba3_0
  scipy                                1.1.0-py37hfa4b5c9_1 --> 1.2.0-py37h7c811a0_0

The following packages will be SUPERSEDED by a higher-priority channel:

  certifi                                          anaconda --> pkgs/main
  conda                                            anaconda --> pkgs/main
  openssl                anaconda::openssl-1.1.1-h7b6447c_0 --> pkgs/main::openssl-1.1.1a-h7b6447c_0


Proceed ([y]/n)? y


Downloading and Extracting Packages
libxgboost-0.80      | 3.7 MB    | ##################################### | 100% 
mkl_random-1.0.2     | 405 KB    | ##################################### | 100% 
certifi-2018.11.29   | 146 KB    | ##################################### | 100% 
ca-certificates-2019 | 126 KB    | ##################################### | 100% 
conda-4.6.2          | 1.7 MB    | ##################################### | 100% 
mkl-2019.1           | 204.6 MB  | ##################################### | 100% 
mkl_fft-1.0.10       | 169 KB    | ##################################### | 100% 
numpy-1.15.4         | 47 KB     | ##################################### | 100% 
scipy-1.2.0          | 17.7 MB   | ##################################### | 100% 
scikit-learn-0.20.2  | 5.7 MB    | ##################################### | 100% 
py-xgboost-0.80      | 1.7 MB    | ##################################### | 100% 
_py-xgboost-mutex-2. | 9 KB      | ##################################### | 100% 
numpy-base-1.15.4    | 4.2 MB    | ##################################### | 100% 
Preparing transaction: done
Verifying transaction: done
Executing transaction: done

Ответ 7

У меня была такая же проблема при установке numpy с помощью pip install numpy.

Потом я попробовал

sudo -H pip3 install --upgrade pip

sudo -H pip3 install numpy

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

Объяснение: Параметр -H (HOME) с sudo устанавливает переменную среды HOME в домашний каталог целевого пользователя (по умолчанию root). По умолчанию sudo не изменяет HOME.

Ответ 8

Do this:
sudo chown -R your_username:your_username path/to/virtuaelenv/

Ответ 10

Попробуйте: pip install --upgrade pip --user.

Ответ 11

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

$ sudo python -m pip install --user --upgrade pip

Ответ 12

У меня установлена анаконда для Python 3. У меня также есть Python2 на моем Mac.

python --version

дает мне

Python 3.7.3

python2.7 --version

дает мне

Python 2.7.10

Я хотел установить пакет pyspark в python2, учитывая, что он уже установлен в python3.

python2.7 -m pip install pyspark

выдает ошибку

Не удалось установить пакеты из-за ошибки EnvironmentError: [Errno13] В доступе отказано: '/Library/Python/2.7/site-packages/pyspark' Попробуйте использовать опцию --user или проверьте разрешения.

Следующая команда решила это. Слава богу, мне не пришлось вносить какие-либо изменения в конфигурацию.

python2.7 -m pip install pyspark --user

Сбор pyspark Требование уже выполнено: py4j == 0.10.7 в /Library/Python/2.7/site-packages (из pyspark) (0.10.7) Установка собранные пакеты: pyspark Успешно установлен pyspark-2.4.4 You используют версию 18.1, однако доступна версия 19.3.1. Вы следует рассмотреть возможность обновления с помощью команды 'pip install --upgrade pip'.

Ответ 13

MAC & Unix

Просто добавив sudo в команду, вы сработаете.

sudo pip install --upgrade pip

Ответ 14

просто sudo pip install packagename