2017-07-07 114 views
1

我正在嘗試使用pip安裝軟件包,它引發錯誤。pip顯示錯誤'lsb_release -a'返回的非零退出狀態1

命令我都用過,

sudo pip install selenium 

它顯示錯誤,

Exception: 
Traceback (most recent call last): 
    File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 215, in main 
    status = self.run(options, args) 
    File "/usr/local/lib/python2.7/dist-packages/pip/commands/install.py", line 272, in run 
    with self._build_session(options) as session: 
    File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 72, in _build_session 
    insecure_hosts=options.trusted_hosts, 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 329, in __init__ 
    self.headers["User-Agent"] = user_agent() 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 93, in user_agent 
    from pip._vendor import distro 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/distro.py", line 1050, in <module> 
    _distro = LinuxDistribution() 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/distro.py", line 594, in __init__ 
    if include_lsb else {} 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/distro.py", line 933, in _get_lsb_release_info 
    raise subprocess.CalledProcessError(code, cmd, stdout) 
CalledProcessError: Command 'lsb_release -a' returned non-zero exit status 1 
Traceback (most recent call last): 
    File "/usr/local/bin/pip", line 11, in <module> 
    sys.exit(main()) 
    File "/usr/local/lib/python2.7/dist-packages/pip/__init__.py", line 233, in main 
    return command.main(cmd_args) 
    File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 251, in main 
    timeout=min(5, options.timeout)) as session: 
    File "/usr/local/lib/python2.7/dist-packages/pip/basecommand.py", line 72, in _build_session 
    insecure_hosts=options.trusted_hosts, 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 329, in __init__ 
    self.headers["User-Agent"] = user_agent() 
    File "/usr/local/lib/python2.7/dist-packages/pip/download.py", line 93, in user_agent 
    from pip._vendor import distro 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/distro.py", line 1050, in <module> 
    _distro = LinuxDistribution() 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/distro.py", line 594, in __init__ 
    if include_lsb else {} 
    File "/usr/local/lib/python2.7/dist-packages/pip/_vendor/distro.py", line 933, in _get_lsb_release_info 
    raise subprocess.CalledProcessError(code, cmd, stdout) 
subprocess.CalledProcessError: Command 'lsb_release -a' returned non-zero exit status 1 

我已經到處找,但對於這個問題無解。它最近開始表現得如此。此外,軟件更新程序停止工作。不確定它是否與此有關。我正在使用Ubuntu 14.04 LTS和Python 2.X

回答

5

啊啊經典lsb_release問題。我已經多次與這個問題作鬥爭。問題是,默認的Python實現正試圖使用​​Python 3,但lsb_release需要Python 2.要解決這個問題,請執行以下操作:

  • 打開/usr/bin/lsb_release(!請確保您使用sudo或開根)
  • 編輯第一行是#! /usr/bin/python2.7
  • 保存文件

現在你可以再次使用PIP,一切都應該罰款。

+0

我需要在進行更改後重新啓動他們的系統嗎? – Codieroot

+0

@Codieroot nope,只需保存文件,你應該很好去。 –

+0

做了上述步驟。但是,沒有解決。 :( – Codieroot

0

我認爲這是一個與Ubuntu升級衝突的舊編譯的python文件的問題。

對我來說,解決辦法是刪除以下pyc文件

sudo rm /usr/lib/python2.7/dist-packages/*.pyc 
2

我能解決這個錯誤消息unset _PYTHON_SYSCONFIGDATA_NAME。這阻止lsb_release嘗試導入$_PYTHON_SYSCONFIGDATA_NAME。之後,pip install再次工作。如果您運行lsb_release -a並獲得ModuleNotFoundError: No module named '_sysconfigdata_x86_64_conda_cos6_linux_gnu',則此修復適用。

相關問題