[python] 루트 액세스없이 파이썬 모듈을 설치하는 방법은 무엇입니까?

나는 몇 가지 대학 수업을 받고 있으며 ‘교육용 계정’을 받았는데, 이는 일을하기 위해 ssh 할 수있는 학교 계정입니다. 컴퓨터에서 계산 집약적 인 Numpy, matplotlib, scipy 코드를 실행하고 싶지만 시스템 관리자가 아니기 때문에 이러한 모듈을 설치할 수 없습니다.

설치는 어떻게합니까?



답변

대부분의 상황에서 가장 좋은 해결책은 다음을 실행하여 소위 “사용자 사이트”위치 (자세한 내용은 PEP 참조)에 의존 하는 것입니다.

pip install --user package_name

아래는 내 원래의 대답에서보다 “수동적 인”방법입니다. 위의 해결책이 효과가 있다면 그것을 읽을 필요가 없습니다.


easy_install을 사용하면 다음을 수행 할 수 있습니다.

easy_install --prefix=$HOME/local package_name

어느 곳에 설치

$HOME/local/lib/pythonX.Y/site-packages

( ‘local’폴더는 많은 사람들이 사용하는 일반적인 이름이지만 물론 쓰기 권한이있는 폴더를 지정할 수도 있습니다).

수동으로 만들어야합니다

$HOME/local/lib/pythonX.Y/site-packages

PYTHONPATH환경 변수에 추가하십시오 (그렇지 않으면 easy_install이 불평합니다-btw는 위의 명령을 한 번 실행하여 XY의 올바른 값을 찾습니다).

를 사용하지 않는 경우 easy_install접두사 옵션을 찾으십시오. 대부분의 설치 스크립트에서이를 지정할 수 있습니다.

pip를 사용하면 다음을 사용할 수 있습니다.

pip install --install-option="--prefix=$HOME/local" package_name


답변

액세스하거나 설치할 수있는 권한이 easy_install없습니까?

그런 다음, 파이썬 virtualenv( https://pypi.python.org/pypi/virtualenv )을 작성 하고이 가상 환경에서 패키지를 설치할 수 있습니다.

셸에서 4 개의 명령을 실행하면 충분합니다 (XXX의 경우 16.1.0과 같은 현재 릴리스 삽입).

$ curl --location --output virtualenv-X.X.X.tar.gz https://github.com/pypa/virtualenv/tarball/X.X.X
$ tar xvfz virtualenv-X.X.X.tar.gz
$ python pypa-virtualenv-YYYYYY/src/virtualenv.py my_new_env
$ . my_new_env/bin/activate
(my_new_env)$ pip install package_name

출처 및 추가 정보 : https://virtualenv.pypa.io/en/latest/installation/


답변

root 액세스 없이도 easy_install을 실행하여 홈 디렉토리에 Python 패키지를 설치할 수 있습니다. $ HOME / .local 또는 $ HOME / Library / Python / 2.7 / bin과 같이 기본적으로 PYTHONPATH에 포함되는 site.USER_BASE를 사용하여이를 수행하는 표준 방법이 있습니다.

이렇게하려면 홈 디렉토리에 .pydistutils.cfg를 작성하십시오.

cat > $HOME/.pydistutils.cfg <<EOF
[install]
user=1
EOF

이제 루트 권한없이 easy_install을 실행할 수 있습니다.

easy_install boto

또는 루트 액세스없이 pip를 실행할 수도 있습니다.

pip install boto

이것은 나를 위해 작동합니다.

Wesley Tanaka의 블로그 출처 : http://wtanaka.com/node/8095


답변

distutils setup.py스크립트 를 사용해야하는 경우 설치 대상을 강제 실행하기위한 몇 가지 명령 줄 옵션이 있습니다. http://docs.python.org/install/index.html#alternate-installation을 참조 하십시오 . 이 문제가 반복되면 distutils 구성 파일을 설정할 수 있습니다 ( http://docs.python.org/install/index.html#inst-config-files 참조) .

PYTHONPATH 변수 설정은 tihos post에 설명되어 있습니다.


답변

중요한 질문입니다. 내가 사용하는 서버 (Ubuntu 12.04)에는 easy_install3있지만 없습니다 pip3. 이것이 Pip과 다른 패키지를 홈 폴더에 설치 한 방법입니다.

  1. 관리자에게 Ubuntu 패키지 설치 요청 python3-setuptools

  2. 설치된 핍

이처럼 :

 easy_install3 --prefix=$HOME/.local pip
 mkdir -p $HOME/.local/lib/python3.2/site-packages
 easy_install3 --prefix=$HOME/.local pip
  1. Pip (및 다른 Python 앱을 경로에 추가)

이처럼 :

PATH="$HOME/.local/bin:$PATH"
echo PATH="$HOME/.local/bin:$PATH" > $HOME/.profile
  1. 파이썬 패키지 설치

이처럼

pip3 install --user httpie

# test httpie package
http httpbin.org


답변

나는 기본적으로 $ HOME / .juju 디렉토리 안에 아주 작은 리눅스 배포판 (패키지 관리자 만 포함)을 허용 하는 JuJu 를 사용합니다.

proot를 통해 홈 디렉토리 내에 사용자 정의 시스템을 액세스 할 수 있으므로 루트 권한없이 모든 패키지를 설치할 수 있습니다. 모든 주요 Linux 배포판에서 제대로 실행되지만 유일하게 제한되는 것은 JuJu가 권장되는 최소 버전 2.6.32로 Linux 커널에서 실행될 수 있다는 것입니다.

예를 들어, JuJu를 설치하여 pip를 설치 한 후 다음을 입력하십시오.

$>juju -f
(juju)$> pacman -S python-pip
(juju)> pip


답변

가장 쉽고 쉬운 방법은 다음 명령입니다.

pip install --user package_name

http://www.lleess.com/2013/05/how-to-install-python-modules-without.html#.WQrgubyGOnc