2013-09-25 8 views
0

Я пытался обновить python. У меня были версии, установленные на моей машине CentoOS. У меня возникли проблемы с запуском последней версии python, и коллега рекомендует удалить python. Он сказал, что это приведет к удалению старой версии и ее новой. Это не сработало. Нет yum не работает:Обновление Python и сломал yum

-bash: /usr/bin/yum: /usr/bin/python: bad interpreter: No such file or directory 

Я попытался переустановить, но CentOS говорит, что его (yum) уже установлен.

rpm -i yum-3.2.22-40.el5.centos.noarch.rpm error: can't create transaction lock on /var/lib/rpm/__db.000

+2

Сообщение об ошибке, которое вы указали, не говорит, что оно уже установлено. В нем говорится, что он не может получить блокировку, которая, вероятно, означает, что блокировка удерживается другим процессом или вы не выполняете ее как root. – FatalError

ответ

0

Если вам удалось установить новую версию Python, выяснить, где он установлен на: which python

Скажем, он говорит /bin/python

Тогда либо sudo vi /usr/bin/yum и исправить положение в файл или создать символическую ссылку ln -s /bin/python /usr/bin/python.

Однако это еще не конец этого, так как некоторые другие вещи Python будут ожидаться в другом месте, а не там, где они сейчас находятся.

Этот вопрос, вероятно, лучше подходит для superuser.com.

1

Python - это зависимость yum, вам нужно переустановить исходную версию Python из установки CentOS для yum для правильной работы.

Для этого вам либо нужно найти Ppm-версию правильной версии для вашей архитектуры/дистрибутива, либо install it from source.

После этого, если вы хотите обновленную версию Python, проще всего установить его из источника, но используйте make altinstall вместо make install.

1

Я рекомендую использовать pyenv. Общесистемное обновление немного опасно. управляйте версиями python с pyenv. см. эту ссылку https://github.com/yyuu/pyenv

Смежные вопросы