升级Python导致yum报错

一天,需要在Linux服务器上面安装一个rpm包,结果运行yum命令的时候无论如何都会报错,如下:

[root@test bin]# yumThere was a problem importing one of the Python modulesrequired to run yum. The error leading to this problem was: No module named yumPlease install a package which provides this module, orverify that the module is installed correctly.It’s possible that the above module doesn’t match thecurrent version of Python, which is:2.7.10 (default, Sep 7 2015, 10:39:35) [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]If you cannot solve this problem yourself, please go to the yum faq at: http://yum.baseurl.org/wiki/Faq

报错信息中提到:

It’s possible that the above module doesn’t match thecurrent version of Python, which is:2.7.10 (default, Sep 7 2015, 10:39:35)

所以怀疑和刚刚升级的Python有关系,但是也不能为了yum将刚刚升级的Python协助了啊,

我们进一步查看:

[root@test bin]# strace yumexecve(“/usr/bin/yum”, [“yum”], [/* 30 vars */]) = 0brk(0) = 0x1849000……..stat(“/usr/bin”, {st_mode=S_IFDIR|0555, st_size=40960, …}) = 0stat(“/usr/bin/yum”, {st_mode=S_IFREG|0755, st_size=801, …}) = 0open(“/usr/bin/yum.so”, O_RDONLY) = -1 ENOENT (No such file or directory)open(“/usr/bin/yummodule.so”, O_RDONLY) = -1 ENOENT (No such file or directory)open(“/usr/bin/yum.py”, O_RDONLY) = -1 ENOENT (No such file or directory)open(“/usr/bin/yum.pyc”, O_RDONLY) = -1 ENOENT (No such file or directory)stat(“/usr/local/lib/python2.7/yum”, 0x7fff5cca59c0) = -1 ENOENT (No such file or directory)open(“/usr/local/lib/python2.7/yum.so”, O_RDONLY) = -1 ENOENT (No such file or directory)open(“/usr/local/lib/python2.7/yummodule.so”, O_RDONLY) = -1 ENOENT (No such file or directory)open(“/usr/local/lib/python2.7/yum.py”, O_RDONLY) = -1 ENOENT (No such file or directory)open(“/usr/local/lib/python2.7/yum.pyc”, O_RDONLY) = -1 ENOENT (No such file or directory)stat(“/usr/local/lib/python2.7/plat-linux2/yum”, 0x7fff5cca59c0) = -1 ENOENT (No such file or directory)…..write(2, “There was a problem importing on”…, 527There was a problem importing one of the Python modulesrequired to run yum. The error leading to this problem was: No module named yumPlease install a package which provides this module, orverify that the module is installed correctly.It’s possible that the above module doesn’t match thecurrent version of Python, which is:2.7.10 (default, Sep 7 2015, 10:39:35) [GCC 4.4.7 20120313 (Red Hat 4.4.7-3)]If you cannot solve this problem yourself, please go to the yum faq at: http://yum.baseurl.org/wiki/Faq ) = 527write(2, “\n”, 1) = 1rt_sigaction(SIGINT, {SIG_DFL, [], SA_RESTORER, 0x343800f500}, {0x4e4a30, [], SA_RESTORER, 0x343800f500}, 8) = 0brk(0x1907000) = 0x1907000exit_group(1) = ?[root@test bin]#

我们通过strace命令,发现日志中的下半部分,都是Python导致的错误,

然后想起原来系统中的Python是 2.66版本的,后来我将其升级成了2.7.10了

会不会就是这个问题导致的呢? 然后我从其他的服务器(同版本)中下载下来一个2.66的Python,放到/usr/bin目录下,并且重命名为 python2.6

然后执行命令查找yum的位置,并且vi打开yum文件,将第一行的Python改为 python2.6

将其他yum开头的几个脚本也都做修改

[root@test bin]# which yum/usr/bin/yum[root@test bin]# vi yum[root@test bin]# head -n 1 yum*==> yum <==#!/usr/bin/python2.6==> yum-builddep <==#!/usr/bin/python2.6 -tt==> yum-config-manager <==#!/usr/bin/python2.6 -tt==> yum-debug-dump <==#!/usr/bin/python2.6 -tt==> yum-debug-restore <==#!/usr/bin/python2.6 -tt==> yumdownloader <==#!/usr/bin/python2.6 ==> yum-groups-manager <==#!/usr/bin/python2.6 -tt

再次运行yum命令,问题解决!

更多YUM相关教程见以下内容:

RedHat 6.2 Linux修改yum源免费使用CentOS源 http://www.68idc.cn/Linux/2013-07/87383.htm

配置EPEL YUM源 http://www.68idc.cn/Linux/2012-10/71850.htm

Redhat 本地yum源配置 http://www.68idc.cn/Linux/2012-11/75127.htm

yum的配置文件说明 http://www.68idc.cn/Linux/2013-04/83298.htm

RedHat 6.1下安装yum(图文) http://www.68idc.cn/Linux/2013-06/86535.htm

YUM 安装及清理 http://www.68idc.cn/Linux/2013-07/87163.htm

CentOS 6.4上搭建yum本地源 http://www.68idc.cn/Linux/2014-07/104533.htm

一切都在发展变化,不断地向昨天告别,满怀信心地投入每一个崭新的今天。

升级Python导致yum报错

相关文章:

你感兴趣的文章:

标签云: