运行环境:Ubuntu 16.04, WebStorm 2016.1.3, node.js v0.12.5, nodemon 1.9.2
在WS自带的终端输入nodemon server.js启动项目,报如下错误提示,服务能正常跑,但是无法监测文件修改。
[nodemon] Internal watch failed: watch ENOSPC
解决办法是在终端输入如下命令,然后重新运行nodemon server.js。
echo fs.inotify.max_user_watches=582222 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
或者执行下面的命令:
sudo sysctl fs.inotify.max_user_watches=582222 && sudo sysctl -p
该命令行的意思是将系统当前用户下允许监视的文件数量增加到一定数值。默认情况下该值比较低,而nodemon往往会监视大量的文件和目录,所以我们需要通过这行命令来修改这个值。
注意,在WS的终端执行Ctrl + C并不能结束node进程,从而导致下一次服务启动时端口被占用而失败。正确的方法是直接点击终端窗口旁边的红色小叉以结束掉当前会话。