NIN*_*NJA 6 python apt lsb-release pip 16.04
当我尝试 pip install Django 或其他任何东西时出现错误,例如..
pip install Django 抛出错误:
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
Run Code Online (Sandbox Code Playgroud)
然后我在我的系统中检查了 lsb_release -a 。它也已损坏,引发错误:
File "/usr/bin/lsb_release", line 64
print("No LSB modules are available.", file=sys.stderr)
^ SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
问题出在哪里,我该如何解决?
小智 6
我和你有同样的问题,但我在查看文件后解决了这个问题/usr/bin/lsb_release。
文件的开头是#!/usr/bin/python3 -Es,这意味着它在/usr/bin/python3.
在我的系统中,该文件是 python2.7 的符号链接。
我通过删除 symlink 解决了这个问题/usr/bin/python3,然后用正确的符号链接替换它到 python3.5:
sudo ln -s /usr/bin/python3.5 /usr/bin/python3
Run Code Online (Sandbox Code Playgroud)
很抱歉回复这个“旧”帖子。
这些天我在Ubuntu 17.10 中也遇到了这个 'lsb_release -a' 错误。我终于解决了这个问题
sudo rm -rf /usr/bin/lsb_release
Run Code Online (Sandbox Code Playgroud)
如果我将此文件保存在计算机中,即使我在其中指定了正确的 python 目录,它也会给我错误: subprocess.CalledProcessError: Command 'lsb_release -a' returned non-zero exit status 1。
所以,我在我的电脑中删除了它,它可以工作。