CentOS python upgrade 후 PATH 문제
센토스의 기본 파이선 버전이 낮아서 (현재 제가 하고자 하는걸 하려면 2.6이상이 필요)
2.7로 upgrade 하였습니다.(컴파일)
업그레이드 후 문제가 하나 생겼는데요 yum이 동작을 안하네요. 해당 모듈을 import 할 수
없다고 하면서 말이죠.
왜 그런거 봤더니..
python2.4 에서는 sys.path가
['', '/usr/lib64/python24.zip', '/usr/lib64/python2.4', '/usr/lib64/python2.4/plat-linux2', '/usr/lib64/python2.4/lib-tk', '/usr/lib64/python2.4/lib-dynload', '/usr/lib64/python2.4/site-packages', '/usr/lib64/python2.4/site-packages/Numeric', '/usr/lib64/python2.4/site-packages/PIL', '/usr/lib64/python2.4/site-packages/gtk-2.0', '/usr/lib/python2.4/site-packages']
python2.7 에서는 sys.path
['', '/opt/python2.7/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg', '/opt/python2.7/lib/python2.7/site-packages/virtualenv-1.7.2-py2.7.egg', '/opt/python2.7/lib/python2.7/site-packages/pip-1.1-py2.7.egg', '/opt/python2.7/lib/python2.7/site-packages/oca-0.2.3-py2.7.egg', '/opt/python2.7/lib/python27.zip', '/opt/python2.7/lib/python2.7', '/opt/python2.7/lib/python2.7/plat-linux2', '/opt/python2.7/lib/python2.7/lib-tk', '/opt/python2.7/lib/python2.7/lib-old', '/opt/python2.7/lib/python2.7/lib-dynload', '/opt/python2.7/lib/python2.7/site-packages']
이네요..
업그레이드 후 기존 라이브러리를 못 불러오는데 이걸 어찌 해줘야 하나요..?
이거때문에 머리가 지끈지끈 거리네요 ㅠㅠ
centos는 모르지만..
yum이 python에 의존성을 갖고 있나 보네요? 으흠..
보니까 /usr/bin/yum은 /usr/bin/python에 의존성을 갖고 있네요.
컴파일해서 설치하실 때, python2.7 바이너리가 /usr/bin/python을 덮어쓰게 되신 건 아닌지. 적어주신 sys.path를 보면 /opt/python2.7에 설치하신 것 같긴 합니다만.
/usr/bin/python --version
를 해보시면 확인가능하겠죠.보니까 파이썬 yum 패키지는 /usr/lib/python2.4/site-packages에 있을 것 같은데요, 현 상태에서 응급처치로는 PYTHONPATH에 그 패쓰를 추가해주시면 되지 않을까 싶네요.
그리고 다음 글타래 참조해보세요.. python2.4 강제로 재설치하는 법이네요.
http://www.linuxquestions.org/questions/red-hat-31/bash-usr-bin-yum-usr-bin-python-bad-interpreter-no-such-file-or-director-933911/
centos 용 python 2.6 rpm 은
centos 용 python 2.6 rpm 은 아래에서 구할 수 있습니다.
http://dl.fedoraproject.org/pub/epel/5
기존 2.4 를 대체하는 것은 아니고 같이 설치됩니다.
python2.6 또는 python26 호출로 실행가능합니다.
2.6 용 파이썬 패키지 rpm 도 다수 있습니다.
저는 이렇게 해결했네요.
버전은 약간 다르지만 에러는 같습니다.
질문자분은 2.4에서 2.6으로 업글 하려다 그러셨는데
전 2.6에서 2.7로 업글해서 그렇게 되네요.
해결법은 yum은 찾아보면 스크립트입니다.
#!/usr/bin/python
이라는게 제일 처음에 있는데
#!/usr/bin/python2.4 (제 경우는 2.6으로..)
이런식으로 바꿉니다.
초보가 지나가다 끄적입니다.
댓글 달기