“pip install --user…”의 목적은 무엇입니까?
보낸 사람 pip install --help
:
--user Install to the Python user install directory for your platform. Typically ~/.local/, or %APPDATA%\Python on
Windows. (See the Python documentation for site.USER_BASE for full details.)
site.USER_BASE에 대한 문서는 내가 이해하지 못하는 흥미로운 * NIX 주제의 끔찍한 웜홀입니다.
--user
일반 영어 의 목적은 무엇입니까 ? 왜 패키지를 설치해야 ~/.local/
합니까? 왜 $ PATH에 실행 파일을 넣지 않겠습니까?
pip는 기본적으로 Python 패키지를 시스템 디렉토리 (예 :)에 설치합니다 /usr/local/lib/python3.4
. 루트 액세스가 필요합니다.
--user
대신 홈 디렉토리에 pip 설치 패키지를 만들므로 특별한 권한이 필요하지 않습니다.
--user
에 설치합니다 site.USER_SITE
.
내 경우에는이었다 /Users/.../Library/Python/2.7/bin
. 그래서 ~/.bash_profile
파일에 PATH에 추가했습니다 .
export PATH=$PATH:/Users/.../Library/Python/2.7/bin
다른 답변 site.USER_SITE
에는 Python 패키지가 배치되는 위치가 언급 되어 있습니다. 바이너리를 찾고 있다면로 이동하십시오 {site.USER_BASE}/bin
.
이 디렉토리를 쉘의 검색 경로에 추가하려면 다음을 사용하십시오.
export PATH="${PATH}:$(python3 -c 'import site; print(site.USER_BASE)')/bin"
MAC OS에서 --user
플래그 를 사용하는 이유 는 OS가 의존하는 라이브러리를 손상시키지 않기 위해서입니다. 보수적 많은 MAC OS 사용자를위한 접근 방식은 설치하거나 필요로하는 명령을 핍 업데이트 방지하는 것입니다 sudo
. 따라서 여기에는 설치가 포함됩니다 /usr/local/bin
...
참조 : Neovim 용 Python 설치 ( https://github.com/zchee/deoplete-jedi/wiki/Setting-up-Python-for-Neovim )
시스템이 및 에서 파이썬 바이너리에만 의존한다는 사실을 감안할 때 설치 가 MAC에 위험을 초래하는 이유 는 모두 명확 하지 않습니다 . 나는 위에서 언급 한대로,로를 설치하는 것이 있기 때문에 용의자 가 필요 시스템 라이브러리와 비용이 많이 드는 실수로 문을 열고있다. 따라서 설치 는 이러한 위험을 피할 수있는 확실한 방법입니다./usr/local/bin
/Library/Frameworks/
/usr/bin
/usr/local/bin
sudo
~/.local/bin
참조 : Mac에서 파이썬 사용하기 ( https://docs.python.org/2/using/mac.html )
마지막으로, 정도에에 패키지를 설치하는 이점이 /usr/local/bin
그것에서 디렉토리의 소유자를 변경하는 것이 취하면, 궁금 root
로를 user
? 이렇게하면 sudo
시스템 종속적 인 변경을 방지하면서 사용하지 않아도 됩니다. * 이것이 보안 기본값이 과거에 (서버로) Unix 시스템이 더 자주 사용 된 방식의 유물입니까? 아니면 최소한 서버를 호스팅하지 않는 MAC 사용자를위한 좋은 방법일까요?
* 참고 : Mac의 SIP (System Integrity Protection) 기능은 또한 사용자가 시스템 종속 라이브러리를 변경하지 못하도록 보호하는 것 같습니다.
-전자
가장 좋은 방법은 설치 virtualenv
이며 --user
혼란을 요구하지 않습니다 . 패키지를 설치할 때마다 더 많은 유연성을 얻고 다른 파이썬 버전과 프로젝트를 클로버 링 할 염려가 없습니다.
https://virtualenv.pypa.io/en/stable/
단지 경고 :
에 따르면 이 문제 , --user
현재 가상 ENV의 내부 유효하지 않은 pip
사용자 위치가 정말 가상 환경에 대한 이해가되지 않기 때문이다.
따라서 pip install --user some_pkg
가상 환경 내부에서 사용하지 마십시오 . 그렇지 않으면 가상 환경 pip
이 혼동됩니다. 자세한 내용은 이 답변 을 참조하십시오.
참고 URL : https://stackoverflow.com/questions/42988977/what-is-the-purpose-pip-install-user
'IT story' 카테고리의 다른 글
Visual Studio 2010을 완전히 제거하는 방법? (0) | 2020.07.24 |
---|---|
배경 : 없음 대 배경 : 투명 차이점은 무엇입니까? (0) | 2020.07.24 |
메모리에서 16 진 / 16 진 격자를 어떻게 표현합니까? (0) | 2020.07.24 |
Markdown과 reStructuredText 모두에 동일한 README가 있습니다. (0) | 2020.07.24 |
rreplace-문자열에서 마지막으로 나타나는 표현식을 바꾸는 방법? (0) | 2020.07.24 |