我正在使用默认配置安装 mongodb,并且可以正常启动,但是当我更改数据库路径值指向不同的位置它开始给我异常,有人可以帮助我,告诉我我在哪里犯了错误,
这是我的/etc/mongod.conf我正在修改的文件,
这是我尝试启动 mongodb 时得到的输出
这是我的 mongodb 日志/var/log/mongo/mongod.log
这是我的/ebs/mongo/和/ebs/mongo/db权限
这是 strate启动 mongod 服务(它相当大 :()
strace -f 服务 mongod 启动> test.txt
我真的不知道这里发生了什么 :(,请解释一下...提前致谢
答案1
您的db
文件夹归 拥有root:root
,您不应以 身份运行 MongoDB root
。如果您使用的是 MongoDB 默认值(您没有提到您使用的 Linux 版本),那么该服务将以mongod
或mongodb
用户身份启动,而不是root
,这是正确的行为。
因此,当mongod
进程尝试创建/使用文件时mongod.lock
,您会收到权限错误。您需要适当更改权限/ebs/mongo/db
。可以使用以下命令之一(作为root
,或使用 sudo)完成此操作:
chown -R mongodb:mongodb /ebs/mongo/db
或者:
chown -R mongod:mongod /ebs/mongo/db
你还需要确保无论logpath
您使用的任何内容都可以由同一用户编写。我基本上已经回答了这个问题之前在 StackOverflow 上原因略有不同,所以也请查看那里。