패키지를 설치할 때 특정 파일에 쓰기 권한을 부여할 수 있나요?

패키지를 설치할 때 특정 파일에 쓰기 권한을 부여할 수 있나요?

내 시스템에 numpy를 설치하려고 합니다. 그런데 일부 폴더에 대한 편집 권한이 없어서 패키지를 설치할 수 없습니다. 이 "권한 블록"은 사용자(나 같은)가 특정 중요한 구조를 맹목적으로 파괴하는 것을 방지하기 위해 운영 체제 개발자가 만든 표준 보안 메커니즘입니다.

실행할 수 sudo python setup.py install있으며 이렇게 하면 내 권한 블록을 덮어쓰게 되지만 이는 위험합니다. 패키지에 포함된 스크립트가 안전하지 않은 경우 sudo패키지 설치를 호출하면 모든 위협이 무시됩니다.

맹목적으로 를 호출하는 것과는 달리 sudo일부 장치에 설치할 수 있는 설치 권한을 구체적으로 부여할 수 있습니다.특정한폴더?

답변1

가상 환경을 사용할 수 있습니다. virtualenv를 사용하면 Python 라이브러리를 시스템 라이브러리와 다른 디렉터리에 설치할 수 있습니다. 쓰기 권한이 있는 디렉터리(예: 홈 디렉터리)로 디렉터리를 설정할 수 있습니다.

또는 파일 그룹을 변경 chgrp py-installer -R /my/python/packages/directory하고 설치 프로그램을 실행할 수 있습니다. 이 그룹은 sudo -g py-installer python setup.py주의하지 않으면 잘못된 폴더 권한을 얻을 수 있으므로 더 위험합니다.

관련 정보