我安装了mongodb
:
sudo apt-get install mongodb
尝试运行它:
mongod
遇到此错误:
Mon Aug 21 20:46:44 [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?, terminating
但是现在必须修复访问权限:
makan@blah:~$ls -hal /data/db/
total 8.0K
drwxr-xr-x 2 mongodb mongodb 4.0K Aug 21 19:56 .
drwxr-xr-x 3 mongodb mongodb 4.0K Aug 21 19:56 ..
和:
makan@blah:~$ls -hal /data/
drwxr-xr-x 2 mongodb mongodb 4.0K Aug 21 19:56 db
那么为什么mongodb无法打开/创建锁文件?
答案1
根据问题描述,您似乎正在mongod
从自己的帐户(用户makan
:)运行。
mongod
您在未指定配置文件或的情况下调用,--dbpath
将要求此用户对默认 dbpath 目录 ( ) 具有读/写权限/data/db
。由于/data/db
仅可由用户 写入,因此在尝试写入使用 权限运行的文件mongodb
时,预计会出现权限错误:mongod
makan
锁定文件:/data/db/mongod.lock errno:13 权限被拒绝 mongod 实例是否已在运行?,终止
启动/停止的常用方法mongod
是使用服务定义,它以用户和组身份mongodb
运行sudo service mongod start
。
该服务使用配置文件(/etc/mongod.conf
)和数据目录(/var/lib/mongodb
),安装后它们应该已经具有正确的权限。