Leave a Comment
1、报错信息:
There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: No module named yum Please install a package which provides this module, or verify that the module is installed correctly. It's possible that the above module doesn't match the current version of Python, which is: 2.7.8 (default, Oct 28 2016, 14:33:56) [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] If you cannot solve this problem yourself, please go to the yum faq at: http://yum.baseurl.org/wiki/Faq
错误原因:错误信息描述为 yum 所依赖的python 不相符,请安装相对应的python即可
2、查看yum版本
[root@centos ~]# rpm -qa |grep yum yum-plugin-security-1.1.30-37.el6.noarch yum-3.2.29-75.el6.centos.noarch yum-utils-1.1.30-37.el6.noarch PackageKit-yum-0.5.8-26.el6.x86_64 yum-metadata-parser-1.1.2-16.el6.x86_64 PackageKit-yum-plugin-0.5.8-26.el6.x86_64 yum-plugin-fastestmirror-1.1.30-37.el6.noarch
3、查看python版本
[root@centos ~]# whereis python python: /usr/bin/python2.6 /usr/bin/python /usr/lib/python2.6 /usr/lib64/python2.6 /usr/local/bin/python2.7 /usr/local/bin/python2.7-config /usr/local/lib/python2.7 /usr/include/python2.6 /usr/share/man/man1/python.1.gz
果然装了两个版本python
4、执行python,查看到使用2.7.8的版本
[root@centos ~]# python Python 2.7.8 (default, Oct 28 2016, 14:33:56) [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2 Type "help", "copyright", "credits" or "license" for more information.
5、猜测yum调用了高版本的python。
6、解决方法:
查找yum和 yum-updatest文件,并编辑此py文件
[root@centos ~]# which yum /usr/bin/yum [root@centos ~]# cat /usr/bin/yum #!/usr/bin/python import sys try: import yum except ImportError: print >> sys.stderr, """\ There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: %s Please install a package which provides this module, or verify that the module is installed correctly. .......
将
#!/usr/bin/python
改为:
#!/usr/bin/python2.6
然后保存OK.
如果不修改/usr/bin/yum ,则yum无法使用
如果不修改/usr/bin/yum-updatest 会出现如下错误
File "/usr/sbin/yum-updatesd", line 35, inimport dbus ImportError: No module named dbus
当然,修改完后记着
[plain]view plain copy print? [root@localhost google_appengine]# /sbin/service yum-updatesd restart Stopping yum-updatesd: [FAILED] Starting yum-updatesd: [ OK ]
补充:yum基于python写的。
http://blog.csdn.net/ei__nino/article/details/8495295