반응형
다른 유저들의 발생 원인
이 문제는 나의 경우에는 가상환경 내에 pip을 이용하여 패키지를 설치할 때에 설치는 되었지만 환경 변수로의 PATH가 제대로 잡히지 않거나 root에 접근할수 없는 권한이기에 발생하였었다.
나의 발생 원인
python에서 venv를 설치할때 venv의 bin 폴더를 저절로 가상머신 내의 PATH로 잡아주지만 현재 노트북과 데스크탑 두군데에서 개발을 진행하고 있었는데
1. Git 에 가상환경까지 같이 올렸고 이를 받아서 바로 이용하려고 하였다.
> 깃에는 bin 폴더 내의 python 파일이 업로드가 되지 않는다, 다른 환경으로 내려 받아도 자동으로 PATH를 잡아주지 않는다.
2. 사라진 패키지들을 복붙하여 새로운 환경에서도 이용하려고 했다.
> 이와같은 경우에도 제대로 작동하지 않을뿐더러 PATH 또한 잡히지 않아 따로 지정을 해주거나 권한을 가지고 설치해야한다.
해결 방법
더보기
sudo chmod -R 777 env
혹은
pip install --user [패키지명]
위의 chmod 777은 env 폴더에 user mode를 부여하는 것이고 아래의 --user 옵션을 이용한 패키지 설치도 설치 시에 user mode로 설치를 하는 방식이다.
발생 방지
위처럼 해결을 하기 위해 권한을 부여해주고 PATH 에 등록하여 사용해도 되지만 freeze와 requirement.txt 를 통하여 손쉽게 패키지 관리를 할 수 있으니 환경마다 가상환경을 따로 만들어 주는게 편하다.