在執行yum命令時忽然發現出現以下報錯:
# yum list File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^ SyntaxError: invalid syntax
原因:
這是因為yum采用Python作為命令解釋器,這可以從/usr/bin/yum文件中第一行#!/usr/bin/python發現。而python版本之間兼容性不太好,使得2.X版本與3.0版本之間存在語法不一致問題。而CentOS 7自帶的yum采用的是python2.7,當系統將python升級到3.4后,出現語法解釋錯誤。
解決辦法:
一是升級yum。
二是修改yum的解釋器為舊版本python2.7,即將連接文件/usr/bin/python連接回/usr/bin/python2.7。治標不治本,不推薦。
三是在設置里更改解釋器設置,即修改/usr/bin/yum文件,指定使用python2.7作為yum的解釋器:
# vi /usr/bin/yum
將第一行"#!/usr/bin/python" 改為 "#!/usr/bin/python2"即可。
安裝軟件時又會出現另一種報錯
Downloading packages: File "/usr/libexec/urlgrabber-ext-down", line 28 except OSError, e: ^ SyntaxError: invalid syntax
問題與前面一個一樣,因此解決辦法也是一樣的:
# vi /usr/libexec/urlgrabber-ext-down
將第一行"#!/usr/bin/python" 改為 "#!/usr/bin/python2"即可。