
我嘗試在 CentOS 5.6 VM 上更新 Python,但隨後遇到了一些問題。最初,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 儲存庫建議在 CentOS 中呼叫它newt-python
。所以,試試安裝:
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 中的函式庫(又稱模組)才能正常運作。