EnvironmentError로 인해 패키지를 설치할 수 없습니다 : [Errno 13]


108

내 MacOS Mojave 터미널에서 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 만 사용하고 싶습니다.


6
" --user옵션 사용을 고려 하거나 권한을 확인하십시오." 를 읽었습니까 ?
Klaus D.

나는 당신이 옳은 것을 시도했습니다! 나는 그것이 권한을 부여하지 않고 권한을 확인 할 것이라고 생각했습니다. 감사합니다!
Adler

2
python3 용 패키지를 설치하려면 pip3을 사용해야합니다. pip를 업그레이드하려면 권한 오류가 발생하면 sudo로 실행하면됩니다.
BoboDarph


답변:


168

python3 + 를 사용하려면 당신이 사용에 필요한 패키지를 설치합니다pip3 install package_name

그리고 errno 13 을 해결 --user하려면 끝에 추가 해야합니다.

pip3 install package_name --user

편집하다:

파이썬 프로젝트의 경우 가상 환경 에서 작업하는 것이 좋습니다. 에서 .이 도구는 격리 된 Python 가상 환경을 만들어 서로 다른 프로젝트에 필요한 종속성을 별도로 유지하는 데 도움이되는 도구입니다.

python3 + 로 생성 하려면 다음 명령을 사용해야합니다.

virtualenv enviroment_name -p python3

그런 다음 활성화 하여 작업 합니다.

source enviroment_name/bin/activate

가상 환경이 활성화되면 가상 환경의 이름이 터미널 왼쪽에 나타납니다. 그러면 가상 환경이 현재 활성 상태임을 알 수 있습니다. 이제이 가상 환경에서 pip.

pip install package_name

2
이 작업을 수행했지만 여전히 문제가 있습니다. 플라스크를 설치했지만 여전히 내 venv에서 찾을 수 없습니다. 어떡해?
Leonard

VIRTUALENV -p python3.8 enviroment_name 사용을 시도해보십시오 VIRTUALENV [옵션] DEST_DIR
토미 기븐스

1
완벽하게 작동합니다. 감사합니다!
Haardik Dharma

23

권한 명령과 관련하여 터미널 명령 앞에 sudo를 사용해보십시오.

sudo pip install --upgrade pip

Sudo를 사용하면 수퍼 유저의 권한으로 명령을 실행할 수 있으며 전역 시스템 전체 Python 설치용 패키지를 설치할 수 있습니다. 이상적으로는 작업중인 프로젝트에 대한 가상 환경을 만들어야합니다. 보세요이것

파이썬에 관하여 다음과 같이 실행 파일로 pip를 실행 해보십시오.

python3.6 -m pip install <package>

확실하지는 않지만 루트 권한으로 이런 종류의 명령을 실행하는 것은 일반적으로 최선의 생각이 아닙니다. sudo를 사용하면 사용자가 "you"에서 "root"로 변경되어 원하지 않는 결과가 발생할 수 있습니다. 예를 들어 라이브러리는 / home / yourusername 대신 / home / root에 설치할 수 있습니다. 또한 루트 사용자 / 그룹과 관련하여 파일이 생성됩니다. Sudo는 명령이 / usr / local / bin과 같은 시스템 폴더에 파일을 저장해야하는 경우에만 필요합니다! ;)
funder7

1
네, 사실입니다. 나는 그것에 대한 코멘트를 추가했습니다
Dominique Paul

5

나는 똑같은 실수를 저질렀다가 루트 사용자로 가상 환경을 만들었다는 것을 깨달았습니다. 쓰기 금지되어 있으므로 가상 환경이 쓰기 금지되어 있는지 확인하십시오. 새로운 venv를 만들고 다시 시도하십시오


4

패키지 (flask-classful)를 설치하려고 할 때 동일한 오류가 발생했습니다.
아나콘다를 루트로 설치하는 실수를 저질렀습니다. 설치된 아나콘다 폴더의 소유권을 변경했고 패키지를 성공적으로 설치할 수있었습니다.

다음 과 같이 설치된 anaconda 폴더의 소유권을 반복적으로 변경하려면 chown옵션과 함께 명령 을 사용하십시오 -R.

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

여기 소유자는 사용자 이름이고 그룹은 그룹 이름입니다.


3

대답은 오류 메시지에 있습니다. 과거에는 사용자 또는 프로세스가 a sudo pip를 수행했으며 이로 인해 일부 디렉터리에 /Library/Python/2.7/site-packages/...현재 사용자가 액세스 할 수 없게 만드는 권한이 있습니다.

그런 다음 pip install whatever다른 것에 의존하는 작업을 수행했습니다.

따라서 문제를 해결하려면 /Library/Python/2.7/site-packages / ...를 방문하여 루트 또는 사용자가 아닌 권한이있는 디렉토리를 찾은 다음 해당 패키지를 제거한 다음 다시 설치하거나 사용자에게 소유권을 강제로 적용하십시오. 액세스 할 수 있어야합니다.


1
간단하고 작동합니다. 당신이 현재 어떤 사용자 알고 whoami를 $를 사용하여 다음 $ sudo는 대한 Chown 이름 /Library/Python/2.7/site-packages/ 다음 당신은 재귀 대한 Chown 사용해야 할 수도 있습니다 어떤 ... 설치 PIP
선일 쿠마르

3

을 (를) 설치 numpy하는 동안 동일한 문제가 발생 했습니다 pip install numpy.

그런 다음 시도했습니다

sudo -H pip3 install --upgrade pip

sudo -H pip3 install numpy

그것은 나를 위해 잘 작동했습니다.

설명 :-H 으로 (HOME) 옵션 sudo설정 (기본적으로 루트) 대상 사용자의 홈 디렉토리에 HOME 환경 변수입니다. 기본적으로 sudo는 HOME을 수정하지 않습니다.


3

MacO 및 Unix 용

sudo를 명령에 추가하는 것만으로 수퍼 유저로 실행하는 것처럼 작동합니다.

sudo pip install --upgrade pip

그러나 직접 수행하지 않는 것이 좋습니다. 이 게시물을 참조하십시오.


1
이것은 Windows 사용자에게는 전혀 도움이되지 않으며,이 오류는 Windows 운영 권한으로 인해 Windows 사용자에게 더 일반적입니다. 또한 명령은 코드 블록으로 묶어야합니다. 그렇지 않으면 읽기가 어렵습니다
logos_164


1

이미 여기에 게시 된 모든 제안을 시도했지만 여전히 errno 13이 표시됩니다.

Windows를 사용하고 있으며 Python 버전은 3.7.3입니다.

5 시간 동안 문제를 해결하려고 시도한 후이 단계가 효과적이었습니다.

관리자 권한으로 실행 하여 명령 프롬프트를 열려고합니다.


0

나는 또한 같은 문제가 있었고 많은 다른 명령 줄을 시도했지만 이것은 나를 위해 일했습니다.

시험:

    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

0

MacOS의 경우 아래 명령 줄을 사용하여 사용자의 권한을 확인하십시오.

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

0

Python 3 용 아나콘다가 설치되어 있습니다. Mac에도 Python2가 있습니다.

python --version

나에게 준다

파이썬 3.7.3

python2.7 --version

나에게 준다

파이썬 2.7.10

python3에 이미 설치된 pyspark 패키지를 python2에 설치하고 싶었습니다.

python2.7 -m pip install pyspark

나에게 오류를 준다

EnvironmentError로 인해 패키지를 설치할 수 없음 : [Errno 13] 권한 거부 됨 : '/Library/Python/2.7/site-packages/pyspark' --user옵션 사용을 고려 하거나 권한을 확인하십시오.

아래 명령으로 해결되었습니다. 구성 변경을 할 필요가 없었습니다.

python2.7 -m pip install pyspark --user

pyspark 수집 요구 사항이 이미 충족 됨 : py4j == 0.10.7 in /Library/Python/2.7/site-packages (from pyspark) (0.10.7) 수집 된 패키지 설치 : pyspark 성공적으로 설치 pyspark-2.4.4 pip 버전 18.1을 사용 중입니다. 그러나 버전 19.3.1을 사용할 수 있습니다. 'pip install --upgrade pip'명령을 통한 업그레이드를 고려해야합니다.


0

나는 모든 권한을 가진 리눅스에 마운트 된 NTFS 파티션의 venv에서 비슷한 문제가 발생했습니다. pip가 --ignore-installed로 실행되었는지 확인 하면 다음과 같이 해결되었습니다.

python -m pip install --upgrade --ignore-installed


0

Mac에서는 3.7디렉토리가 없거나 디렉토리 3.7root. 그래서 저는 그 디렉토리를 제거하고 현재 사용자로 새 디렉토리를 만든 다음 그곳으로 이동했습니다. 그런 다음 오류없이 설치가 완료됩니다.

sudo rm -rf /Library/Python/3.7
mkdir 3.7
sudo mv 3.7 /Library/Python
ll /Library/Python/
pip3 install numpy

0

이것은 opencv-python패키지 를 설치하려고 할 때도 발생 합니다.

설치 시도

명령 줄로 수정할 수 있습니다.

python3 -m pip install {name of package} --user

해당 패키지를 설치하려고하면 명령이 다음과 같이됩니다.

python3 -m pip install opencv-python --user

결과 :

결과


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