我正在尝试修复我的一个软件包的 dpkg 错误。dpgk python-zope.hookable
-l 命令如下所示:
pFR python-zope.hookable 4.0.4-4build2 amd64 Hookable object support
然而,当我运行时sudo dpkg -P --force-all python-zope.hookable
,我神秘地得到了这个输出:
dpkg: python-zope.hookable: dependency problems, but removing anyway as you requested:
python-zope.component depends on python-zope.hookable; however:
Package python-zope.hookable is to be removed.
dpkg: warning: overriding problem because --force enabled:
dpkg: warning: package is in a very bad inconsistent state; you should
reinstall it before attempting a removal
(Reading database ... 871356 files and directories currently installed.)
Removing python-zope.hookable (4.0.4-4build2) ...
Killed
E: namespace:121: cannot remove /usr/lib/python2.7/dist-packages/zope/__init__.py
在 处创建一个空文件/usr/lib/python2.7/dist-packages/zope/__init__.py
只会给出相同的错误,但没有最后一行。我怀疑这是我的机器上用 dpkg 安装的所有 python 包的问题,尽管我不敢测试它。
这个问题阻止我运行apt-get install
和apt-get remove
,并且dpkg --configure -a
似乎没有改变任何事情。
我真的已经束手无策了,我愿意接受激烈的解决方案。
答案1
通常,该Killed
消息表示该进程已被其他用户或系统终止。这要么是由于管理干预,要么是由于自动干预,通常是由于 CPU 使用率过高或 RAM 过大,系统试图释放资源以供系统运行。
完全有可能,系统试图删除它,但占用了太多内存,因此系统发出了“KILL”命令来停止该进程。我请您检查/var/log/syslog
是否有“进程被杀死”或“oom-killer”之类的痕迹。您在回答我的问题时的评论表明,系统正在使用内存不足杀手或类似进程,因为您过度使用 RAM,而系统正试图避免耗尽资源。
因此,核心问题是您没有足够的内存来运行系统上的所有内容。
我建议评估所有正在运行的程序,并确定您在 VPS 中获得的 RAM 和规格是否真的合适;有些情况下它们不合适,您需要一个更大的 VPS,就像您在这里所想的那样。
答案2
因为你写道:“我真的束手无策了,我愿意接受激进的解决方案。”
我建议从 /var/lib/dpkg/status 中删除相应包的块
这应该可以解决问题