今天用公司服务器的时候,运行yum-config-manager ×××命令时,出现下文错误
Traceback (most recent call last):
File "/usr/bin/yum-config-manager", line 6, in <module>
import yum
ImportError: No module named yum
不会的问题问度娘,网友们的解决方案是修改/usr/bin/yum文件,这里先列出我系统环境:
#whereis python
python: /usr/bin/python2.6-config /usr/bin/python2.6 /usr/bin/python /usr/lib/python2.6 /usr/lib64/python2.6 /usr/local/bin/python /usr/local/bin/python2.7-config /usr/local/bin/python2.7 /usr/local/lib/python2.7 /usr/include/python2.6 /usr/share/man/man1/python.1.gz
#python -V
Python 2.7.14
于是,按照网友们的解决方案,将首行#!/usr/bin/python修改成/usr/bin/python2.6,无果。在没有什么解决方法的情况下,只能靠猜了,重新看了一下错误,说是/usr/bin/yum-config-manager文件有问题,打开看了一眼,首行显示内容是#!/usr/bin/python -tt。进入/usr/bin目录,执行:
#ls -il python*
1141671 lrwxrwxrwx 1 root root 24 2月 8 15:45 python -> /usr/local/bin/python2.7
1050987 lrwxrwxrwx 1 root root 6 5月 8 2017 python2 -> python
1051904 -rwxr-xr-x 2 root root 9032 8月 18 2016 python2.6
1051904 -rwxr-xr-x 2 root root 9032 8月 18 2016 python2.6.6
1054119 -rwxr-xr-x 1 root root 1418 8月 18 2016 python2.6-config
1141331 lrwxrwxrwx 1 root root 16 5月 8 2017 python-config -> python2.6-config
得到以上结果,可以发现python和python2.6指向的不是同一个硬链接,这里查了一下硬链接和软链接,学习了一波,顺便推荐一篇博文:https://blog.csdn.net/kelindame/article/details/51800689,感觉是因为两个文件对应的版本不一致造成命令不能执行,而且是/usr/bin/yum-config-manager文件中的python版本高,抱着试试的心态,回到/usr/bin/yum-config-manager文件中,把第一行改成了#!/usr/bin/python2.6,又尝试了一下,意外的就好了。
总结:度娘上的解决方案虽然有时候不能直接用,但是还是很具有参考价值的嘛,如果方法直接用走不通,可以试试转换一下思路,没准就能出现意外的收获。