noob在这里。在linux上,我安装了meteor,试图加载'todos'应用程序,得到了这个错误。它似乎与文件系统监控有关?我错过了包裹或烫发吗?我用sudo安装了meteor,但我安装了'todos'作为我的基本用户。
提前感谢!
~$ mkdir meteorDev
~$ cd meteorDev/
~/meteorDev$ meteor create --example todos
todos: created.
To run your new app:
cd todos
meteor
~/meteorDev$ cd todos/
~/meteorDev/todos$ meteor
[[[[[ ~/meteorDev/todos ]]]]]
Running on: http://localhost:3000/
fs.js:663
throw errnoException(errno, 'watch');
^
Error: watch EMFILE
at errnoException (fs.js:636:11)
at FSWatcher.start (fs.js:663:11)
at Object.watch (fs.js:691:11)
at [object Object]._scan (/usr/lib/meteor/app/meteor/run.js:322:12)
at Array.forEach (native)
at Function.<anonymous> (/usr/lib/meteor/app/lib/third/underscore.js:76:11)
at new <anonymous> (/usr/lib/meteor/app/meteor/run.js:264:5)
at /usr/lib/meteor/app/meteor/run.js:455:17
at /usr/lib/meteor/app/meteor/run.js:512:5
at /usr/lib/meteor/app/meteor/run.js:570:9
答案 0 :(得分:11)
Meteor使用node的“fs.watch”命令,该命令使用linux的inotify API。您的系统可能没有inotify支持,或者它已关闭。试试看你是否启用了inotify:
cat /proc/sys/fs/inotify/max_user_instances
如果该文件存在并且编号较小,请尝试以root身份来提升限额:
echo 8192 > /proc/sys/fs/inotify/max_user_instances
如果该文件不存在,很可能您的系统不支持inotify或者它以某种方式关闭。
max_user_instances的增加是临时的,并且在重新启动后不会保留。使它永久化:
echo fs.inotify.max_user_instances=8192 | sudo tee /etc/sysctl.d/10-inotify.conf && sudo sysctl -p
答案 1 :(得分:0)
您是否安装了MongoDB?尝试在另一个shell中运行它。
mongod