Node.JS错误:ENOSPC
我有一个node.js和上传文件到服务器的问题。 上传文件到服务器我使用这个插件 。 当开始file upload到服务器node.js进程崩溃并显示错误: 
错误:ENOSPC。
服务器代码不运行。
 $ df -h Filesystem Size Used Avail Use% Mounted on /dev/xvda1 7.9G 4.1G 3.5G 55% / udev 288M 8.0K 288M 1% /dev tmpfs 119M 168K 118M 1% /run none 5.0M 0 5.0M 0% /run/lock none 296M 0 296M 0% /run/shm /dev/xvdf 9.9G 3.0G 6.5G 32% /vol overflow 1.0M 1.0M 0 100% /tmp 
	
  ENOSPC意味着驱动器上没有空间。 
 也许/tmp已满? 您可以通过设置npm config set tmp /path/to/some/other/dir来configurationnpm以使用不同的临时文件夹,或者可以从/tmp文件夹中删除所有内容。 
资料来源: npm 1.1.21不能写,ENOSPC在npm的github中的回购。
注意我以上述源代码的方式解决了我的问题。 但是,请参阅下面的Murali Krishna的答案 ,这是更全面的。
运行以下命令以避免ENOSPC:
 echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p 
 对于Arch Linux,将此行添加到/etc/sysctl.d/99-sysctl.conf : 
 fs.inotify.max_user_watches=524288 
然后执行:
 sysctl --system 
这也将在重启之后持续存在。
https://github.com/guard/listen/wiki/Increasing-the-amount-of-inotify-watchers#the-technical-details
 不能相信这一点,但@grenade指出, npm dedupe将修复原因(太多的文件),而不是症状。 
来源: Grunt手表错误 – 正在等待…致命错误:观看ENOSPC 。
我解决了我的问题,杀死所有的跟踪器控制过程(如果你使用GDM,你可以尝试,如果脚本在服务器上运行,显然不是你的情况)
 tracker-control -r 
我的设置:与GNOME 3 Arch
 如果在Linux文件系统上的/tmp挂载被挂载为溢出(通常大小为1MB),这可能是由于您没有将/tmp指定为自己的分区,并且根文件系统已满并且/tmp被重新挂载为备用文件系统。 
为了解决这个问题,清除空间后,只需卸载回退,它应该重新安装在原来的位置:
 sudo umount overflow 
对于我来说,我已经达到了用户可以拥有的最大数量的文件
 用quota -s检查你的号码,文件下面的号码不要太接近配额 
 如果在尝试运行ember server命令时遇到此错误,请使用rm -rf tmp目录。 然后再运行ember s 。 它帮助了我。 
 重新启动机器解决了我的问题。 我第一次尝试擦/tmp/节点仍然抱怨。 
在我的情况下,在Linux上,sudoing修复了这个问题。
例:
 sudo gulp dev