从源代码构建 python 2.7.3,现在 apt-get 不起作用“ImportError: 没有名为 apt_pkg 的模块”

从源代码构建 python 2.7.3,现在 apt-get 不起作用“ImportError: 没有名为 apt_pkg 的模块”

我需要修复 Python 2.7.3 中的一个错误

11.10 的最新版本是 2.7.2,因此我从源代码构建了 Python 2.7.3

现在,当我尝试时,apt-get [anything]最后出现了这个错误:

Setting up unattended-upgrades (0.73ubuntu1) ...
update-rc.d: warning: unattended-upgrades start runlevel arguments (2 3 4 5) do not match LSB Default-Start values (none)
update-rc.d: warning: unattended-upgrades stop runlevel arguments (0 1 6) do not match LSB Default-Stop values (0 6)
Checking for running unattended-upgrades: 
Traceback (most recent call last):
  File "/usr/share/unattended-upgrades/unattended-upgrade-shutdown", line 27, in <module>
    import apt_pkg
ImportError: No module named apt_pkg
invoke-rc.d: initscript unattended-upgrades, action "start" failed.
dpkg: error processing unattended-upgrades (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 unattended-upgrades
E: Sub-process /usr/bin/dpkg returned an error code (1)

由于这个错误与 python 有关,我推测我通过安装新的 python 破坏了 apt 的某些部分。

虽然我安装到了/usr/local/bin,但没有触碰过/usr/bin/python,它仍然是Ubuntu自带的2.7.2版本。

如果有人能建议一种解决我现在所陷入的困境的方法,我将非常感激,最好不要重新安装操作系统。

答案1

默认情况下,PATH将设置/usr/local/bin/usr/bin,这会导致此问题。一个简单的解决方案是将/usr/local/bin/python可执行文件重命名为/usr/local/bin/python2.7.3或类似的名称。然后在需要新版本的情况下使用这个新名称。

相关内容