【发布时间】:2014-12-06 01:36:41
【问题描述】:
我已经在 Ubuntu 服务器上安装了 MongoDB,如文档 http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/ 中所示。然后,我修改了配置文件/etc/mongod.conf,以便稍后运行mongod服务。
如果我执行,MongoDB 会正常运行:
sudo mongod -f /etc/mongod.conf
但如果我执行,MongoDB 就会停止:
sudo service mongod start
在配置文件/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
【问题讨论】:
-
你的'/data/db'文件夹的权限是什么?
-
为什么 chown
id -u?你不想让所有的目录/文件都归 mongod 用户所有吗? -
好的!与
sudo chown -R mongodb:mongodb /data/db一起工作。权限为 775。感谢您的回复。