我有默认的python2.7,我尝试安装python3.3并安装pip3和Django.now,当我尝试使用yum安装其他版本时,我得到了这个error.for,一个示例yum更新
导入运行yum所需的某个Python模块时出现问题。导致此问题的错误是:没有名为yum的模块请安装提供此模块的软件包,或验证该模块是否已正确安装。可能是以上模块与当前版本的Python不匹配,当前版本为: 2.7.5 (默认为2013年11月12,16:18:42) GCC 4.8.2 20131017 (红帽4.8.2-1)如果您自己解决不了这个问题,请前往yum常见问题解答:http://yum.baseurl.org/wiki/Faq
如何修复此错误?
发布于 2014-05-11 16:59:34
您的系统上可能有许多版本的python,其中只有一个版本安装了yum库。由于某些原因,当您在命令行上运行yum时调用的python二进制文件并不是安装了yum库的那个文件。
查找系统上可用的python2二进制文件的列表。以root用户身份运行:
find / -type f -executable -name 'python2*'输出可能如下所示:
/usr/bin/python2.6
/usr/bin/python2.7
...等等。
对于其中的每一个,运行
/usr/bin/python2.x您将得到一个python提示符。运行:
>>> import yum对每个python二进制文件执行此操作,直到找到一个在此步骤中不引发ImportError的文件。
然后找出yum用来运行python的路径是什么。这是yum脚本中的第一行。跑
cat `which yum` | head -1你可能会得到:
#!/usr/bin/python现在,以root用户身份运行:
ln -s /usr/bin/python2.x /usr/bin/python (将python2.x替换为您之前找到的良好的python版本)。
发布于 2014-05-11 15:19:38
我也有同样的问题。
Yum是用Python lang编写的。
所以当你将默认的Python升级到新版本时,它会给yum带来问题。如果你得到python --version,它会告诉你3.3。
要解决此问题,请将python命令更改为python2.7。
首先检查它:
user@host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28 2013 /usr/bin/python -> python3.3试试看:
mv /usr/bin/python /usr/bin/python-origin
ln -s python2.7 /usr/bin/python然后检查它:
user@host:~$ ls -l /usr/bin/python
lrwxrwxrwx 1 root root 9 Sep 28 2013 /usr/bin/python -> python2.7如果您希望在CentOS中安装python3,则应该通过源代码进行安装。
download main source code via python.org website.
extract archive file.
./configure
make
make installhttps://stackoverflow.com/questions/23589971
复制相似问题