我正在使用全新的Linux安装。我正在尝试安装Meteor。使用Ubuntu 12.04,Centos和Ubuntu 13.04。我安装了Node.js,Meteor和Meteorite。
错误:
Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Can't start mongod
MongoDB had an unspecified uncaught exception.
This can be caused by MongoDB being unable to write to a local database.
Check that you have permissions to write to .meteor/local. MongoDB does
not support filesystems like NFS that do not allow file locking.
我试过了:
正在删除.meteor/local/db/mongod.lock
我还尝试使用chmod
更改整个项目的权限。
您推荐任何Ubuntu发行版吗?
提前致谢。
答案 0 :(得分:29)
我之前(在流星更新或异常流星终止后)遇到过这个问题,这些解决方案以前对我有用。
.meteor/local/db/mongod.lock
并再次运行meteor
。meteor reset
并重新开始,但此命令将清除您的数据库。希望它有所帮助。
答案 1 :(得分:16)
一段时间取决于您的区域设置设置。
流星重置和删除mongod.lock
对我的情况没有帮助。
我已经通过运行
修复了它export LC_ALL=C
您可以将此行添加到
sudo vim /usr/local/bin/meteor
答案 2 :(得分:5)
我所要做的只是在终端上运行“killall mongod”。之后它再次起作用。我相信它可能已经清除了部分数据库。
答案 3 :(得分:3)
对我来说,这些建议的组合得以实现。已经获得2票的The answer!和另一页的this one。
sudo vim /usr/local/bin/meteor
export LC_ALL="en_US.UTF-8"
然后通过发出以下命令确保您的mongodb正在运行哪个端口:
meteor mongo
你会得到这样的回复:
connecting to: 127.0.0.1:3001/meteor
现在您知道配置mongo的端口,将以下内容添加到我们编辑的同一文件中:
export MONGO_URL=mongodb://127.0.0.1:3001/meteor
现在你很高兴。当然"流星重置"但如果您不想丢失数据,请坚持使用这两个导出行。
答案 4 :(得分:2)
我发现设置MONGO_URL有助于避免问题
export MONGO_URL=mongodb://localhost:27017/your_db
答案 5 :(得分:2)
如果您在Vagrant / VirtualBox中运行Ubuntu时遇到此问题,那么问题就来自同步的vagrant文件夹。 解决方法是初始化主目录中的.meteor目录并将其挂载到同步文件夹中。假设您的meteor应用程序名为MyApp,而/ vagrant是同步文件夹,请按照以下步骤操作:
cd ~
meteor create MyApp
cd MyApp
meteor
cd /vagrant/MyApp
sudo mount --bind ~/MyApp/.meteor/ .meteor
meteor
答案 6 :(得分:1)
我有类似的问题。这是因为我的项目目录是我的Dropbox的一部分,并且.meteor / local / db目录中存在一些冲突的文件。删除这些解决了这个问题。
答案 7 :(得分:1)
当我的磁盘空间不足时遇到同样的问题。
释放磁盘中的一些空间为我解决了这个问题。
答案 8 :(得分:1)
当我在Windows 7主机上的VMWare,ubuntu 14.04 guest中运行meteor时遇到了这个问题。问题是我在共享目录中运行meteor / mongo。当我使用非共享目录(〜/ meteor / project)时,问题就消失了。
答案 9 :(得分:1)
按照@Oscar进一步提到的步骤应该排除你。
但是在我的情况下,meteor reset
无法正常工作,请告诉我:
reset: Meteor is running.
This command does not work while Meteor is running your application. Exit the running Meteor development server.
我跟踪了这个过程,如下所示:
$ ps aux | grep meteor --color=auto
给了我这个信息:
$ myUser 71981 0.5 0.0 2849208 3644 ?? S Mon02pm 4:25.27 /Users/myUser/.meteor/packages/meteor-tool/.1.1.10.1b51q9m++os.osx.x86_64+web.browser+web.cordova/mt-os.osx.x86_64/dev_bundle/mongodb/bin/mongod --bind_ip 127.0.0.1 --smallfiles --port 2001 --dbpath /Users/jgt/Documents/Projects/todos/.meteor/local/db --oplogSize 8 --replSet meteor
正如你在Mac上看到的那样,但是在任何基于Unix的操作系统上都能正常工作。 那么你只需要通过它的id杀死进程,就像这样:
$ kill -9 71981
最后再次运行meteor reset
那就是它,现在让它运转起来。希望它有所帮助。
答案 10 :(得分:0)
一种选择是等到您的应用程序在临时服务器或生产服务器上,然后在Android Studio或BlueStacks提供的Android模拟器上对其进行测试。
答案 11 :(得分:0)
我在Windows上的Ubuntu的WSL上遇到此问题。对我而言唯一有效的解决方案是使用mLabs创建一个远程mongodb并运行以下命令
export MONGO_URL=mongodb://username:password@randomurl.mlab.com:port#/project
答案 12 :(得分:-1)
对于Windows 10,我将所有Meteor项目都移动到驱动器C.到目前为止工作。