Python 모듈 설치 시 파일 권한

Python 모듈 설치 시 파일 권한

소스에서 설치 하고 싶기 sphinx-doc때문에 git clone모듈을 사용하고 sudo python setup.py install.

Using /usr/local/lib/python2.7/dist-packages/pytz-2016.4-py2.7.egg
Searching for MarkupSafe==0.23
Best match: MarkupSafe 0.23
Removing MarkupSafe 0.18 from easy-install.pth file
Adding MarkupSafe 0.23 to easy-install.pth file

Using /usr/local/lib/python2.7/dist-packages
Finished processing dependencies for Sphinx==1.4b1.dev-20160423

그러다가 그것을 사용할 권한이 없다는 것을 깨달았습니다.

$ sphinx-quickstart
bash: /usr/local/bin/sphinx-quickstart: Permission denied
$ ls -al /usr/local/bin/sphinx-quickstart 
-rwxr-x--- 1 root root 357 Apr 23 16:56 /usr/local/bin/sphinx-quickstart

문제는 올바른 권한으로 어떻게 설치합니까?입니다.

sudo를 사용하여 폴더를 만들거나 /media에 드라이브를 마운트해야 할 때 이런 유형의 문제가 자주 발생합니다. 이것은 약간 벗어난 주제입니다. 하지만 일반 사용자로서 내 컴퓨터에 내 드라이브를 마운트할 수 없습니다 /media. 이것이 정상입니까?755root

답변1

소스에서 Python 패키지를 설치하려면 virtualenv에서 설치해야 합니다. 이렇게 하면 시스템의 Python이 손상될 가능성이 최소화되고 너무 많은 패키지를 제거할 걱정 없이 설치된 패키지만 제거할 수 있습니다.

이렇게 하려면 먼저 virtualenv를 설치해야 합니다.

 sudo apt-get install python-virtualenv

설치가 완료되면 어딘가에 virtualenv를 생성하고 활성화하십시오.

 sudo mkdir /opt/util
 sudo chown $USER /opt/util
 virtualenv /opt/util/sphinx-doc
 source /opt/util/sphinx-doc/bin/activate

그런 다음 실행

 python setup.py install

git복제된 디렉토리 에서는 sudo.

virtualenv가 활성화되어 있는 동안에는 sphinx-doc모든 (다른) 유틸리티를 실행하거나 생성 할 수 있습니다 python setup.py install. 활성화되지 않은 경우에는 다음을 사용하여 virtualenv를 /opt/util/sphinx-doc/bin/<UTILNAME>실행할 수도 있습니다(별칭을 생성할 수도 있음).

/opt/util/sphinx-doc원하는 무엇이든 변경할 수 있습니다. 그러나 이러한 virtualenv를 함께 사용하면 pip설치된 패키지를 자동으로 업데이트하고 별칭을 정의하는 등의 일부 스크립트를 쉽게 만들 수 있습니다.

관련 정보