天天看點

正常問題解決:File “/usr/bin/yum“, line 30 及 File “/usr/libexec/urlgrabber-ext-down“, line 28

原文位址

在執行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
           

繼續閱讀