数据库移动后MongoDB服务无法启动

数据库移动后MongoDB服务无法启动,mongodb,Mongodb,我在Amazon EC2上安装的MongoDB磁盘空间不足,因此我创建了一个新的EBS卷,干净地关闭了MongoDB服务,将DB文件复制到新卷,在与旧分区相同的位置重新安装,并尝试重新启动服务,但我遇到了以下错误: Sat Jun 9 10:03:30 [initandlisten] MongoDB starting : pid=24466 port=27017 dbpath=/db/mongo 64-bit host=ip-10-234-7-0 Sat Jun 9 10:03:30 [in

我在Amazon EC2上安装的MongoDB磁盘空间不足,因此我创建了一个新的EBS卷,干净地关闭了MongoDB服务,将DB文件复制到新卷,在与旧分区相同的位置重新安装,并尝试重新启动服务,但我遇到了以下错误:

Sat Jun  9 10:03:30 [initandlisten] MongoDB starting : pid=24466 port=27017 dbpath=/db/mongo 64-bit host=ip-10-234-7-0
Sat Jun  9 10:03:30 [initandlisten] db version v2.0.5, pdfile version 4.5
Sat Jun  9 10:03:30 [initandlisten] git version: 1bb4de4630302fad8af53824ca4f627db490b753
Sat Jun  9 10:03:30 [initandlisten] build info: Linux ip-10-110-9-236 2.6.21.7-2.ec2.v1.2.fc8xen #1 SMP Fri Nov 20 17:48:28 EST 2009 x86_64 BOOST_LIB_VERSION=1_41
Sat Jun  9 10:03:30 [initandlisten] options: { config: "/etc/mongodb.conf", dbpath: "/succeed/db/mongo", logappend: "true", logpath: "/var/log/mongodb/mongodb.log" }
Sat Jun  9 10:03:30 [initandlisten] journal dir=/db/mongo/journal
Sat Jun  9 10:03:30 [initandlisten] recover : no journal files present, no recovery needed
Sat Jun  9 10:03:30 [initandlisten] warning couldn't write to / rename file /db/mongo/journal/prealloc.0
Sat Jun  9 10:03:30 [initandlisten] couldn't open /db/mongo/MyDB_Mongo.ns errno:1 Operation not permitted
Sat Jun  9 10:03:30 [initandlisten] error couldn't open file /db/mongo/MyDB_Mongo.ns terminating
Sat Jun  9 10:03:30 dbexit: 
Sat Jun  9 10:03:30 [initandlisten] shutdown: going to close listening sockets...
Sat Jun  9 10:03:30 [initandlisten] shutdown: going to flush diaglog...
Sat Jun  9 10:03:30 [initandlisten] shutdown: going to close sockets...
Sat Jun  9 10:03:30 [initandlisten] shutdown: waiting for fs preallocator...
Sat Jun  9 10:03:30 [initandlisten] shutdown: lock for final commit...
Sat Jun  9 10:03:30 [initandlisten] shutdown: final commit...
Sat Jun  9 10:03:30 [initandlisten] shutdown: closing all files...
Sat Jun  9 10:03:30 [initandlisten] closeAllFiles() finished
Sat Jun  9 10:03:30 [initandlisten] journalCleanup...
Sat Jun  9 10:03:30 [initandlisten] removeJournalFiles
Sat Jun  9 10:03:30 [initandlisten] shutdown: removing fs lock...
Sat Jun  9 10:03:30 dbexit: really exiting now
目录对mongodb用户具有适当的权限。有人能解释为什么这一切没有开始吗?我可以使用配置文件以root用户身份手动启动

我应该提到的是,这样做很有效:

$ sudo su mongodb
$ mongod --config /etc/mongodb.conf &
我正在使用10代apt存储库中的MongoDB 2.0.5。

“”“ 目录对mongodb用户具有适当的权限。 “”“

显然你的假设是错误的。我们应该相信你的假设还是清除错误信息?
想想看

这个问题是由于mongodb用户没有足够的权限造成的。在修复权限后重新启动mongodb服务应该可以解决这个问题。

好的,为了让它正常工作,我已经使用chmod-R 777/db设置了权限。此服务器仅运行Mongodb,仅由我使用。我似乎没有使用SELinux。那么,我会错过什么呢?我也运行了chown-R root:mongodb/db你能在/db和/db/mongo上检查ls-l吗?事实上,在与10gen交谈之后,问题源于Ubuntu apt存储库的mongodb包中的Ubuntu服务。我从UbuntuRepo切换到10genRepo,但我没有意识到这项服务仍然是UbuntuRepo。不过我觉得Ubuntu服务脚本并不容易理解。