在我们的暂存 EC2 实例上运行后do-release-upgrade -d
,我遇到了 dpkg 的问题。
我最初的问题是 mkvirtualenv 命令失败并出现以下错误:
Unknown distribution virtual 1.7.11
有些细节我无法恢复,因为我已经删除了 python :(
但是,一旦我手动删除了 python,并尝试重新安装它,我在 apt-get 安装过程的 rnd 开始收到以下错误:
Setting up python-twisted-names (11.1.0-1) ...
/var/lib/dpkg/info/python-twisted-names.postinst: 8: /var/lib/dpkg/info/python-twisted-names.postinst: pycompile: not found
dpkg: error processing package python-twisted-names (--configure):
subprocess installed post-installation script returned error exit status 127
Setting up python-twisted-web (11.1.0-1) ...
/var/lib/dpkg/info/python-twisted-web.postinst: 8: /var/lib/dpkg/info/python-twisted-web.postinst: pycompile: not found
dpkg: error processing package python-twisted-web (--configure):
subprocess installed post-installation script returned error exit status 127
Errors were encountered while processing:
python-twisted-names
python-twisted-web
E: Sub-process /usr/bin/dpkg returned an error code (1)
任何帮助深表感谢。
答案1
您是否尝试过重新安装 dpkg?
sudo apt-get install --reinstall dpkg
如果这不起作用,这可能是 pythons 包特有的。尝试修改 postinst 文件:gksu gedit /var/lib/dpkg/info/python-twisted-names.postinst
或者如果您愿意,可以使用其他文本编辑器。
删除所有内容并替换为
#!/bin/sh
set -e
exit 0
如果这仍然不起作用,您可以尝试删除状态文件rm /var/lib/dpkg/status
并保留原样,以便构建新文件,或将其替换为旧文件cp /var/lib/dpkg/status-old /var/lib/dpkg/status
我也知道这些命令dpkg --configure -a
和dpkg-reconfigure -phigh -a
,它们应该有用,但我不知道什么时候。在不同的时间点尝试它们。不要忘记sudo apt-get update
在配置之前至少尝试一次。