启动官方的 egg hackernews,egg-watcher 执行 watch 的时候栈报错了,暂时未找到错误产生的原因。
错误日志:
2017-03-11 19:42:19,151 ERROR 31670 nodejs.ENOSPCError: watch /home/mwong/Documents/Recruit/interview/egg-example/config ENOSPC
at exports._errnoException (util.js:1022:11)
at FSWatcher.start (fs.js:1429:19)
at Object.fs.watch (fs.js:1456:11)
at Walk.<anonymous> (/home/mwong/Documents/Recruit/interview/egg-example/node_modules/wt/index.js:186:20)
at emitTwo (events.js:106:13)
at Walk.emit (events.js:191:7)
at /home/mwong/Documents/Recruit/interview/egg-example/node_modules/ndir/lib/ndir.js:107:16
at FSReqWrap.oncomplete (fs.js:123:15)
code: 'ENOSPC'
errno: 'ENOSPC'
syscall: 'watch /home/mwong/Documents/Recruit/interview/egg-example/config'
filename: '/home/mwong/Documents/Recruit/interview/egg-example/config'
dir: '/home/mwong/Documents/Recruit/interview/egg-example/config'
name: 'ENOSPCError'
pid: 31670
hostname: asus-x550cc
2017-03-11 19:42:19,154 ERROR 31670 nodejs.ENOSPCError: watch /home/mwong/Documents/Recruit/interview/egg-example/app ENOSPC
at exports._errnoException (util.js:1022:11)
at FSWatcher.start (fs.js:1429:19)
at Object.fs.watch (fs.js:1456:11)
at Walk.<anonymous> (/home/mwong/Documents/Recruit/interview/egg-example/node_modules/wt/index.js:186:20)
at emitTwo (events.js:106:13)
at Walk.emit (events.js:191:7)
at /home/mwong/Documents/Recruit/interview/egg-example/node_modules/ndir/lib/ndir.js:107:16
at FSReqWrap.oncomplete (fs.js:123:15)
code: 'ENOSPC'
errno: 'ENOSPC'
syscall: 'watch /home/mwong/Documents/Recruit/interview/egg-example/app'
filename: '/home/mwong/Documents/Recruit/interview/egg-example/app'
dir: '/home/mwong/Documents/Recruit/interview/egg-example/app'
name: 'ENOSPCError'
pid: 31670
hostname: asus-x550cc
2017-03-11 19:42:19,156 ERROR 31670 nodejs.ENOSPCError: watch /home/mwong/Documents/Recruit/interview/egg-example/app/public ENOSPC
at exports._errnoException (util.js:1022:11)
at FSWatcher.start (fs.js:1429:19)
at Object.fs.watch (fs.js:1456:11)
at Walk.<anonymous> (/home/mwong/Documents/Recruit/interview/egg-example/node_modules/wt/index.js:186:20)
at emitTwo (events.js:106:13)
at Walk.emit (events.js:191:7)
at /home/mwong/Documents/Recruit/interview/egg-example/node_modules/ndir/lib/ndir.js:90:12
at FSReqWrap.oncomplete (fs.js:123:15)
code: 'ENOSPC'
errno: 'ENOSPC'
syscall: 'watch /home/mwong/Documents/Recruit/interview/egg-example/app/public'
filename: '/home/mwong/Documents/Recruit/interview/egg-example/app/public'
dir: '/home/mwong/Documents/Recruit/interview/egg-example/app/public'
name: 'ENOSPCError'
pid: 31670
hostname: asus-x550cc
2017-03-11 19:42:19,158 ERROR 31670 nodejs.ENOSPCError: watch /home/mwong/Documents/Recruit/interview/egg-example/app/controller ENOSPC
at exports._errnoException (util.js:1022:11)
at FSWatcher.start (fs.js:1429:19)
at Object.fs.watch (fs.js:1456:11)
at Walk.<anonymous> (/home/mwong/Documents/Recruit/interview/egg-example/node_modules/wt/index.js:186:20)
at emitTwo (events.js:106:13)
at Walk.emit (events.js:191:7)
at /home/mwong/Documents/Recruit/interview/egg-example/node_modules/ndir/lib/ndir.js:107:16
at FSReqWrap.oncomplete (fs.js:123:15)
code: 'ENOSPC'
errno: 'ENOSPC'
syscall: 'watch /home/mwong/Documents/Recruit/interview/egg-example/app/controller'
filename: '/home/mwong/Documents/Recruit/interview/egg-example/app/controller'
dir: '/home/mwong/Documents/Recruit/interview/egg-example/app/controller'
name: 'ENOSPCError'
pid: 31670
hostname: asus-x550cc
这个错是没空间了吧?
但是感觉不太科学啊,我的 nvm 装在用户目录下的,我用户目录 900 多 G,几乎都没怎么用过。
通过修改系统配置:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
提高监听的文件数确实可行,暂时没有什么问题,thanks:)
遇到了同样的问题,启动时报错:
ERROR 46 nodejs.ENOSPCError: ENOSPC: System limit for number of file watchers reached, watch '/usr/src/app/app/public/static'
@shiny 你是不是在 /app/public 目录下有 node_modules 了。
@atian25 没有。经过排查,疑似服务器上其他进程(类似 vscode remote server进程)引起的问题。重启释放后不再出现此错误信息。
Most helpful comment
@atian25 没有。经过排查,疑似服务器上其他进程(类似 vscode remote server进程)引起的问题。重启释放后不再出现此错误信息。