psycopg2
CentOS 7.3에 Python 3을 루트로 설치했습니다 . 내가 su
루팅할 때
> python3 -m pip show psycopg2
Name: psycopg2
Version: 2.6.2
Summary: psycopg2 - Python-PostgreSQL Database Adapter
Home-page: http://initd.org/psycopg/
Author: Federico Di Gregorio
Author-email: [email protected]
License: LGPL with exceptions or ZPL
Location: /opt/rh/rh-python34/root/usr/lib64/python3.4/site-packages
Requires:
pip
표시된 디렉토리에 설치됩니다 .뿌리( /opt/rh/rh-python34/root/usr/lib64/python3.4/site-packages
).
그러나 다른 사용자로 전환하면 Python은 패키지를 볼 수 없으며 python3 -m pip show psycopg2
아무것도 반환되지 않습니다. 이를 가져오는 py 스크립트를 실행하려고 하면 오류가 발생합니다. 루트가 아닌 사용자로 디렉토리에 들어가서 파일을 읽을 수 있음을 확인했습니다.
루트로 설치된 Python 패키지를 다른 모든 사용자에게 표시하는 방법은 무엇입니까?
답변1
먼저 psycopg2
패키지( sudo pip uninstall psycopg2
)를 제거한 후 다음을 수행합니다.
1:
저장소에서 패키지를 설치하십시오 python-psycopg2
.
$ sudo yum install python-psycopg2
또는
2:
umask
로 변경 022
하고 설치하세요.psycopg2
$ umask 022
$ sudo pip install psycopg2
답변2
이것은 Python 경로 문제입니다. PYTHONPATH
다음과 같이 설정된 시스템 변수를 도입하여 문제를 해결했습니다 /opt/rh/rh-python34/root/usr/lib64/python3.4/site-packages
.
export PYTHONPATH=/opt/rh/rh-python34/root/usr/lib64/python3.4/site-packages