
Я попытался обновить Python на моей CentOS 5.6 VM и столкнулся с некоторыми проблемами после этого. Сначала yum
не работало, но я решил это.
Однако теперь я не могу получить доступ к разделу «Конфигурация сети» setup
.
Когда я выбираю эту опцию, в командной строке я вижу следующее:
[root@crmpicco ~]# setup
Traceback (most recent call last):
File "/usr/sbin/system-config-network-tui", line 9, in <module>
from snack import *
ImportError: No module named snack
Строка 9 в этом файле выглядит так:
from snack import *
Я не знаком с Python (я PHP-разработчик), поэтому не знаю, что с этим делать и как это исправить.
Вот что я установил относительно Python:
[root@crmpicco ~]# yum list installed | grep python
MySQL-python.x86_64 1.2.1-1 installed
audit-libs-python.x86_64 1.7.18-2.el5 installed
dbus-python.x86_64 0.70-9.el5_4 installed
gamin-python.x86_64 0.1.7-8.el5 installed
gnome-python2.x86_64 2.16.0-1.fc6 installed
gnome-python2-bonobo.x86_64 2.16.0-1.fc6 installed
gnome-python2-canvas.x86_64 2.16.0-1.fc6 installed
gnome-python2-gnomevfs.x86_64 2.16.0-1.fc6 installed
libselinux-python.x86_64 1.33.4-5.7.el5 installed
libxml2-python.x86_64 2.6.26-2.1.2.8.el5_5.1 installed
libxslt-python.x86_64 1.1.17-2.el5_2.2 installed
mod_python.x86_64 3.2.8-3.1 installed
python.x86_64 2.4.3-43.el5 installed
python-devel.i386 2.4.3-43.el5 installed
python-devel.x86_64 2.4.3-43.el5 installed
python-elementtree.x86_64 1.2.6-5 installed
python-iniparse.noarch 0.2.3-4.el5 installed
python-libs.x86_64 2.4.3-43.el5 installed
python-numeric.x86_64 23.7-2.2.2 installed
python-sqlite.x86_64 1.1.7-1.2.1 installed
python-urlgrabber.noarch 3.1.0-6.el5 installed
python26.x86_64 2.6.8-2.el5 installed
python26-libs.x86_64 2.6.8-2.el5 installed
rpm-python.x86_64 4.4.2.3-22.el5 installed
Кроме того, похоже, что теперь я использую Python 2.6.8.
python --version
дает мне
Python 2.6.8
решение1
Ошибка сообщает об отсутствии определенного модуля Python (библиотеки):
ImportError: No module named snack
На моем Debian, snack.py
предоставляется пакетом python-newt
. Быстрый поискРепозитории CentOSпредполагает, что это называется newt-python
в CentOS. Итак, попробуйте установить это:
yum install newt-python
решение2
Чтобы исправить это в моей установке CentOS 5.6, я сделал следующее:
wget http://vault.centos.org/5.6/os/x86_64/CentOS/python-2.4.3-43.el5.x86_64.rpm
rpm -ivh --force python-2.4.3-43.el5.x86_64.rpm
решение3
Мое предложение - переустановить все библиотеки версии 2.6 и, возможно, удалить, python 2.4
ноЯ не уверен насчет этой части.
Проблема в том, что теперь вы установили и Python 2.6
, вероятно, используете по умолчанию, в то время как у вас почти нет ни одной из следующих библиотек для python 2.6
(которые были установлены для python 2.4
):
libselinux-python.x86_64
libxml2-python.x86_64
libxslt-python.x86_64
python.x86_64
python-devel.i386
python-devel.x86_64
python-elementtree.x86_64
python-iniparse.noarch
python-libs.x86_64
python-numeric.x86_64
python-sqlite.x86_64
python-urlgrabber.noarch
Я предлагаю вам либо удалить python 2.6
(но это, вероятно, не то, что вы хотите), либо установить все эти недостающие библиотеки, например python 2.6
так:
yum install libselinux-python26.x86_64
yum install libxml2-python26.x86_64
yum install libxslt-python26.x86_64
yum install mod_python26.x86_64
yum install python26.x86_64
yum install python26-devel.i386
yum install python26-devel.x86_64
yum install python26-elementtree.x86_64
yum install python26-iniparse.noarch
yum install python26-libs.x86_64
yum install python26-numeric.x86_64
yum install python26-sqlite.x86_64
yum install python26-urlgrabber.noarch
Я не могу гарантировать успешность такой установки, но таков дух. потому что python 2.6
не хватает библиотеки, она же модуль в Python, для корректной работы.