programing

루트 액세스 없이 python 모듈을 설치하는 방법

goodcopy 2022. 11. 26. 13:01
반응형

루트 액세스 없이 python 모듈을 설치하는 방법

저는 대학교 수업을 듣고 있는데, '교육 계정'을 받았습니다. 이 계정은 제가 일을 할 때 사용할 수 있는 학교 계정입니다.계산 부하가 높은 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

('로컬' 폴더는 많은 사용자가 사용하는 일반적인 이름이지만, 물론 쓸 권한이 있는 폴더를 지정할 수 있습니다).

수동으로 작성해야 합니다.

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

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

「 」를하고 있지 않은 경우easy_install 어느쪽인가를 할 수 ., 「」를 참조해 주세요.대부분의 인스톨스크립트에서는, 프리픽스옵션을 지정할 수 있습니다.

pip에서는 다음을 사용할 수 있습니다.

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

도, 인스톨 권한도입 권한도 없습니다.easy_install

다음 수 .virtualenv(https://pypi.python.org/pypi/virtualenv) 및 이 가상 환경에서 패키지를 설치합니다.

셸에서 4개의 명령어를 실행하는 것으로 충분합니다(X.X의 경우 16.1.0과 같은 최신 릴리스를 삽입합니다).X):

$ 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 패키지를 홈 디렉토리에 설치할 수 있습니다.사이트를 사용하여 이를 수행하는 표준 방법이 있습니다.USER_BASE: $HOME/.local 또는 $HOME/Library/Python/2.7/bin과 같은 기본 설정으로 PYTONPATH에 포함되어 있습니다.

이를 수행하려면 홈 디렉토리에 .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

디스트리뷰트를 해야 하는 setup.py스크립트에는, 인스톨처를 강제하기 위한 몇개의 커맨드 라인 옵션이 있습니다.http://docs.python.org/install/index.html#alternate-installation 를 참조해 주세요.이 문제가 반복되면 디스트리뷰트 설정 파일을 셋업할 수 있습니다.http://docs.python.org/install/index.html#inst-config-files 를 참조해 주세요.

PYTONPATH 변수 설정은 tihos 포스트에서 설명합니다.

중요한 질문입니다.사용하고 있는 서버(Ubuntu 12.04)는easy_install3하지만 아니다pip3이렇게 해서 Pip과 다른 패키지를 홈 폴더에 설치했습니다.

  1. 관리자에게 Ubuntu 패키지 설치를 의뢰했다.python3-setuptools

  2. 설치된 pip

다음과 같이 합니다.

 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. Python 패키지 설치

이것처럼.

pip3 install --user httpie

# test httpie package
http httpbin.org

기본적으로 $HOME/.ju 디렉토리 내에 매우 작은 Linux 디스트리뷰션(패키지 매니저만 포함)을 가질 수 있는 JuJu를 사용하고 있습니다.

이를 통해 홈 디렉토리 내의 커스텀시스템을 proot 경유로 액세스 할 수 있기 때문에 root 권한 없이 임의의 패키지를 설치할 수 있습니다.모든 주요 Linux 디스트리뷰션에서 정상적으로 동작합니다.단, JuJu가 권장되는 최소한의 버전 2.6.32의 Linux 커널에서 동작할 수 있다는 것이 유일한 제한입니다.

예를 들어, PIP를 설치하기 위해 JuJu를 설치한 후 다음과 같이 입력합니다.

$>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

virtualenv 로컬 설치(지시 소스):

중요:X.X.X최신 릴리스(16.1.0 등)를 삽입합니다.
추출된 파일의 이름을 확인하고 YYYY 에 삽입합니다.

$ curl -L -o virtualenv.tar.gz https://github.com/pypa/virtualenv/tarball/X.X.X
$ tar xfz virtualenv.tar.gz
$ python pypa-virtualenv-YYYYY/src/virtualenv.py env

필요한 패키지를 사용하거나 설치하기 전에source가상 Python 환경env:

$ source env/bin/activate

numpy와 같은 새로운 python 패키지를 설치하려면 다음을 사용합니다.

(env)$ pip install <package>

관리자 권한 없이 Python 패키지 설치

import sys

!{sys.executable} -m pip install package_name

import sys

!{sys.executable} -m pip install kivy

참고 자료: https://docs.python.org/3.4/library/sys.html#sys.executable

언급URL : https://stackoverflow.com/questions/7465445/how-to-install-python-modules-without-root-access

반응형