MongoDB 不会卸载

MongoDB 不会卸载

因此,在 Debian 上安装时遵循官方 MongoDB 安装说明,您将走向一个痛苦的世界。首先,它没有正确安装,所以现在 - 我正在尝试删除所有已安装的 MongoDB 软件包,以便我可以从头开始。

令人沮丧的是,因为它没有安装干净(大概),所以它不会卸载。

最初,我使用此处的说明进行安装: http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian/

目前,我已经成功删除了除mongodb-org-服务器哪个,就是不会去。

尝试删除会导致以下结果:

user@host:/$ sudo apt-get remove mongodb-org-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
mongodb-org-server
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
1 not fully installed or removed.
After this operation, 23.9 MB disk space will be freed.
Do you want to continue [Y/n]? y
(Reading database ... 31030 files and directories currently installed.)
Removing mongodb-org-server ...
invoke-rc.d: unknown initscript, /etc/init.d/mongod not found.
dpkg: error processing mongodb-org-server (--remove):
 subprocess installed pre-removal script returned error exit status 100
invoke-rc.d: unknown initscript, /etc/init.d/mongod not found.
dpkg: error while cleaning up:
 subprocess installed post-installation script returned error exit status 100
Errors were encountered while processing:
 mongodb-org-server
E: Sub-process /usr/bin/dpkg returned an error code (1)

这给我带来了无数的问题,我现在有什么想法可以正确、干净地摆脱 MongoDB 吗?

内容/var/lib/dpkg/info/mongodb-org-server.prerm:

#!/bin/sh
set -e
# Automatically added by dh_installinit
if [ -e "/etc/init/mongod.conf" ]; then
        invoke-rc.d mongod stop || exit $?
fi
# End automatically added section

约旦

答案1

包裹mongodb-org-server似乎已损坏。 prerm 脚本mongodb-org-server.prerm尝试将脚本 /etc/init.d/mongod作为invoke-rc.d.顾名思义,该脚本在删除包之前prerm运行。dpkgmongodb-org-server

发帖人说服务器没有运行,因此 prerm 脚本是无操作的。

因此,显而易见的做法是注释掉 的相关部分mongodb-org-server.prerm,即:

if [ -e "/etc/init/mongod.conf" ]; then
        invoke-rc.d mongod stop || exit $?
fi

然后再次运行删除。虽然我会推荐

apt-get purge mongodb-org-server

并在可能的情况下报告此包的错误。

相关内容