2014-12-06 117 views
2

我已经在Ubuntu服务器上安装了MongoDB,如文档http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/所示。然后,我修改了配置文件/etc/mongod.conf,稍后运行mongod服务。MongoDB服务无法启动。 errno:13权限被拒绝

MongoDB的正确运行,如果我执行:

sudo mongod -f /etc/mongod.conf 

但MongoDB的停止,如果我执行:

sudo service mongod start 

在config文件中/etc/mongod.conf我改变只有这个:

dbpath=/data/db 
logpath=/root/logs/mongod.log 
port=20000 

随着这个配置,日志文件也不会被创建。

如果我不修改前面指出的值,服务将正常启动。默认值是:

dbpath=/var/lib/mongodb 
logpath=/var/log/mongodb/mongod.log 
port = 27017 

因为日志文件不与自定义配置创建的,我只是改变了DBPATH为看到错误:

[initandlisten] exception in initAndListen: 10309 Unable to create/open lock file: /data/db/mongod.lock errno:13 Permission denied Is a mongod instance already running? 

我试图运行下面的命令,但没有成功:

sudo chown -R `id -u` /data/db 

sudo rm /var/lib/mongodb/mongod.lock 
mongod --repair 

堆栈:

  • 的Ubuntu 14.10
  • 的MongoDB 2.6.5
+2

'/ data/db'文件夹的权限是什么? – Jhanvi 2014-12-06 05:22:14

+2

为什么chown'id -u'?你不想让所有mongod用户拥有的目录/文件? – 2014-12-06 09:36:23

+0

好的!用'sudo chown -R mongodb:mongodb/data/db'工作。许可是775.谢谢你的回应。 – cespon 2014-12-08 19:36:53

回答

9

我们必须让所有mongod的用户拥有的目录/文件。为此:

sudo chown -R mongodb:mongodb /data/db 
+0

希望我能够百万次提高这个数字 – Melkor 2017-12-08 23:25:40

相关问题