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

내 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 만 사용하고 싶습니다.



답변

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


답변

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

sudo pip install --upgrade pip

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

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

python3.6 -m pip install <package>


답변

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


답변

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

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

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

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


답변

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

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

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


답변

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

그런 다음 시도했습니다

sudo -H pip3 install --upgrade pip

sudo -H pip3 install numpy

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

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


답변

MacO 및 Unix 용

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

sudo pip install --upgrade pip

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