环境:Centos7
错误:
File "/usr/bin/yum", line 30
except KeyboardInterrupt, e:
问题:服务器中同时包含python2和python3,默认使用的是python3,因此运行yum命令之后报错
解决:
1. 首先查询机器中是否包含python2,命令 python + 两个 tab
2. 修改 /usr/bin/ 目录下所有yum相关的文件
[root@VM-4-2-centos bin]# find yum*
yum
yum-builddep
yum-config-manager
yum-debug-dump
yum-debug-restore
yumdownloader
yum-groups-manager
以yum文件为例:vim /usr/bin/yum, 将
修改为
#!/usr/bin/python2
所有其他文件做与yum文件相同的操作,即将python改为python2。
3. 修改 urlgrabber-ext-down 文件
vim /usr/libexec/urlgrabber-ext-down 文件,将
修改为:python2
如果不修改则会报另一个错误:
updates | 2.9 kB 00:00:00
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
^
SyntaxError: invalid syntax
File "/usr/libexec/urlgrabber-ext-down", line 28
except OSError, e:
4. 如果在运行yum其他命令报以上相关错误。做同样的处理。
5. 测试