lsb-release 软件包在 14.04 中损坏

lsb-release 软件包在 14.04 中损坏
$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up lsb-release (4.1+Debian11ubuntu6.1) ...
Traceback (most recent call last):
  File "/usr/bin/py3compile", line 290, in <module>
    main()
  File "/usr/bin/py3compile", line 270, in main
    options.force, options.optimize, e_patterns)
  File "/usr/bin/py3compile", line 156, in compile
    cfn = interpreter.cache_file(fn, version)
  File "/usr/share/python3/debpython/interpreter.py", line 212, in cache_file
    (fname[:-3], self.magic_tag(version), last_char))
  File "/usr/share/python3/debpython/interpreter.py", line 246, in magic_tag
    return self._execute('import imp; print(imp.get_tag())', version)
  File "/usr/share/python3/debpython/interpreter.py", line 359, in _execute
    raise Exception('{} failed with status code {}'.format(command, output['returncode']))
Exception: python3.4 -c 'import imp; print(imp.get_tag())' failed with status code 1
dpkg: error processing package lsb-release (--configure):
 subprocess installed post-installation script returned error exit status 1
E: Sub-process /usr/bin/dpkg returned an error code (1)

答案1

发生这种情况是因为您在路径上的某个地方安装了损坏的 Python,希望您在其他地方仍有一个可以运行的 Python,但损坏的 Python 会先被发现。如果您在 Google 上搜索该错误消息,您会发现当您尝试使用错误版本的库运行 Python 时会发生这种情况。如果您安装了反向移植版本,然后升级或安装了安装其自己的 Python 的应用程序,通常会发生这种情况。

尝试“哪个 python”和“哪个 python3”来查看找到了哪些。

如果发现某个文件不在 /usr/bin/ 中,那么您可以将其设为不可执行文件,然后重试。如果此方法有效,您需要找到方法将其从路径中移除以修复此问题。

作为 Python 开发人员,避免这种情况的一个好方法是使用 --user 安装 pip,这样它就不会触及系统 python 或使用虚拟环境。

答案2

升级到 16.04.1,Python 可以自行修复:P

相关内容