尝试将Mongod作为服务运行时,用户mongod不存在

时间:2018-06-25 14:17:49

标签: node.js mongodb mongoose

我试图通过执行以下命令在远程服务器中将Mongod作为服务运行:

sudo service mongod start

但是,我收到此消息:

Starting mongod: runuser: user mongod does not exist [FAILED]

当我使用sudo mongod在前台启动MongoDB时,它工作正常。

请问有人可以建议我解决该问题吗?

谢谢

2 个答案:

答案 0 :(得分:0)

错误说系统用户mongod不存在,但是如果您使用下面链接中的mongo软件包安装,它将自动创建...您可以手动创建该ID,但是它不是普通的Unix ID及其权力必须与配置和日志记录保持一致,因此要当心

您使用的是什么版本的OS? (这是一个非常特定于操作系统的问题)

如果是基于debian的(ubuntu等),请参阅文档https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/

在创建了该ID(或更好地遵循该链接)之后,下面是假设您已设置启动脚本的情况下,如何从基于systemd的框启动(请参见链接中的详细信息)

sudo systemctl enable mongod

sudo systemctl start mongodb

但是,如果您精通Docker,则可以很容易地启动一个mongo容器...好处是,上面的灰烬细节消失了,而被单线替换了...我明天在酒吧会提供细节

答案 1 :(得分:0)

使用压缩文件而不是软件包安装mongo时,不会创建用户mongod。 通过更改/etc/init.d/mongod

中配置文件中的两个字段可以解决此问题。
<input type="number" class="text-left form-control"  th:field="*{monthAcct[__${stat.index}__].janAmt}"/>

将这些字段更改为root。

MONGO_USER=mongod
MONGO_GROUP=mongod