Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 600. pip cache 디렉터리 옮기는 방법 [링크 복사], [링크+제목 복사],
조회: 8772
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

pip cache 디렉터리 옮기는 방법

다음의 디렉터리를 살펴 보면,

%LOCALAPPDATA%\pip 

하위에 cache 디렉터리가 있고 그 용량이 1.59GB를 넘고 있습니다. 당연히 옮길 수 있으면 좋겠지요. ^^ 검색해 보면 다음의 자료들이 나오는데,

bryanveloso/pip.conf
; https://gist.github.com/bryanveloso/328409

Python PIP local cache
; https://www.techiediaries.com/python-pip-local-cache/

pip.ini 파일의 위치는 다음의 명령어로 구할 수 있어,

c:\temp> pip config -v debug
env_var:
env:
global:
  C:\ProgramData\pip\pip.ini, exists: False
site:
  e:\Python37\pip.ini, exists: False
user:
  %APPDATA%\pip\pip.ini, exists: False

그럼 이런 식으로 ini 파일을 구성하면 될 듯합니다.

[global]
download-cache = e:/pip_cache
log-file = e:/pip_cache/tmp/pip-log.txt

그런데 실제로 저렇게 해도 효과가 없습니다. 적용 여부는 다음의 명령어로 확인할 수 있는데요,

c:\temp> pip cache dir
%LOCALAPPDATA%\pip\cache

ini 파일의 download-cache 설정을 무시해버립니다. 재미있는 건 "log-file" 설정은 또 통합니다. ^^; (혹시 INI를 통한 방법을 아시는 분은 덧글 부탁드립니다. ^^)

다행히 좀 더 검색해 보면 "PIP_CACHE_DIR" 환경 변수로 제어할 수 있다고 합니다. 실제로 환경 변수 설정 후에는, 예를 들어 PIP_CACHE_DIR=e:\pip_cache로 설정한 경우 pip 명령어로도 잘 확인이 됩니다.

c:\temp> pip cache dir
e:\pip_cache

이제 %LOCALAPPDATA%\pip 디렉터리를 삭제해도 무방하지만, 다운로드에 사용한 시간이 아깝다면 ^^ 새로운 디렉터리로 복사해 재사용해도 됩니다.




참고로 Anconda의 경우에는,

Configuring a shared package cache
; https://docs.anaconda.com/anaconda/user-guide/tasks/shared-pkg-cache/

아래의 문서를 편집해,

%USERPROFILE%\.condarc

pkgs_dirs에 넣으면 된다고.

pkgs_dirs:
    - /path/to/shared_directory




"C:\Python37" 디렉터리에서 "e:\Python37"로 Python 디렉터리를 이동했더니, 이후로 pip 실행 시 다음과 같은 오류가 발생합니다.

c:\temp> pip
Fatal error in launcher: Unable to create process using '"C:\Python37\python.exe"  "e:\Python37\Scripts\pip.exe" ': The system cannot find the file specified.

음... ^^; 그냥 초기화를 시키면 다시 잘 동작합니다.

c:\temp> python -m pip install --upgrade --force-reinstall pip




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 9/2/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 16  17  18  19  [20]  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13139정성태10/9/20226100.NET Framework: 2057. 리눅스 환경의 .NET Core 3/5+ 메모리 덤프로부터 모든 닷넷 모듈을 추출하는 방법파일 다운로드1
13138정성태10/8/20227417.NET Framework: 2056. C# - await 비동기 호출을 기대한 메서드가 동기로 호출되었을 때의 부작용 [1]
13137정성태10/8/20225760.NET Framework: 2055. 리눅스 환경의 .NET Core 3/5+ 메모리 덤프로부터 닷넷 모듈을 추출하는 방법
13136정성태10/7/20226341.NET Framework: 2054. .NET Core/5+ SDK 설치 없이 dotnet-dump 사용하는 방법
13135정성태10/5/20226601.NET Framework: 2053. 리눅스 환경의 .NET Core 3/5+ 메모리 덤프를 분석하는 방법 - 두 번째 이야기
13134정성태10/4/20225334오류 유형: 820. There is a problem with AMD Radeon RX 5600 XT device. For more information, search for 'graphics device driver error code 31'
13133정성태10/4/20225662Windows: 211. Windows - (commit이 아닌) reserved 메모리 사용량 확인 방법 [1]
13132정성태10/3/20225560스크립트: 42. 파이썬 - latexify-py 패키지 소개 - 함수를 mathjax 식으로 표현
13131정성태10/3/20228313.NET Framework: 2052. C# - Windows Forms의 데이터 바인딩 지원(DataBinding, DataSource) [2]파일 다운로드1
13130정성태9/28/20225281.NET Framework: 2051. .NET Core/5+ - 에러 로깅을 위한 Middleware가 동작하지 않는 경우파일 다운로드1
13129정성태9/27/20225595.NET Framework: 2050. .NET Core를 IIS에서 호스팅하는 경우 .NET Framework CLR이 함께 로드되는 환경
13128정성태9/23/20228229C/C++: 158. Visual C++ - IDL 구문 중 "unsigned long"을 인식하지 못하는 #import파일 다운로드1
13127정성태9/22/20226697Windows: 210. WSL에 systemd 도입
13126정성태9/15/20227327.NET Framework: 2049. C# 11 - 정적 메서드에 대한 delegate 처리 시 cache 적용
13125정성태9/14/20227536.NET Framework: 2048. C# 11 - 구조체 필드의 자동 초기화(auto-default structs)
13124정성태9/13/20227292.NET Framework: 2047. Golang, Python, C#에서의 CRC32 사용
13123정성태9/8/20227721.NET Framework: 2046. C# 11 - 멤버(속성/필드)에 지정할 수 있는 required 예약어 추가
13122정성태8/26/20227622.NET Framework: 2045. C# 11 - 메서드 매개 변수에 대한 nameof 지원
13121정성태8/23/20225547C/C++: 157. Golang - 구조체의 slice 필드를 Reflection을 이용해 변경하는 방법
13120정성태8/19/20227093Windows: 209. Windows NT Service에서 UI를 다루는 방법 [3]
13119정성태8/18/20226647.NET Framework: 2044. .NET Core/5+ 프로젝트에서 참조 DLL이 보관된 공통 디렉터리를 지정하는 방법
13118정성태8/18/20225497.NET Framework: 2043. WPF Color의 기본 색 영역은 (sRGB가 아닌) scRGB [2]
13117정성태8/17/20227696.NET Framework: 2042. C# 11 - 파일 범위 내에서 유효한 타입 정의 (File-local types)파일 다운로드1
13116정성태8/4/20228141.NET Framework: 2041. C# - Socket.Close 시 Socket.Receive 메서드에서 예외가 발생하는 문제파일 다운로드1
13115정성태8/3/20228501.NET Framework: 2040. C# - ValueTask와 Task의 성능 비교 [1]파일 다운로드1
13114정성태8/2/20228695.NET Framework: 2039. C# - Task와 비교해 본 ValueTask 사용법파일 다운로드1
... 16  17  18  19  [20]  21  22  23  24  25  26  27  28  29  30  ...