ubuntu 上运行的django 出现No space left on device错误

发布于 2019-09-26 作者 风铃 24次 浏览 版块 前端

运行django出现错误信息:

[2016-02-16 14:33:24,476 pyinotify ERROR] add_watch: cannot watch /usr/local/lib/python2.7/dist-packages/django/contrib/sessions/backends/cache.py WD=-1, Errno=No space left on device (ENOSPC) ERROR:pyinotify:add_watch: cannot watch /usr/local/lib/python2.7/dist-packages/django/contrib/sessions/backends/cache.py WD=-1, Errno=No space left on device (ENOSPC)


查询网络第一判断是缺少Inode节点: linux中创建一个文件不仅仅需要存储空间,也需要Inode节点。Inode节点在磁盘建立的时候就分配好最大的个数(每2K空间分配一个节点),一般情况下这个数目是够用的,但是如果磁盘拥有大量小文件(小于2k),就能将Inode节点用完。


查看存储空间



$df -h


查看i节点



$df -i


看是那种情况。


不幸的是我哪种都不是,后来在stackflow找到了答案。


问题原因:You may have reached your quota of watches.


解决办法


  查看目前的最大值


To find your current limit, type this in your terminal:



$cat /proc/sys/fs/inotify/max_user_watches


 


  增加最大值


Which is typically 8192 by default.


To increase your limit, type this:



$sudo sysctl fs.inotify.max_user_watches=16384


  永久设置最大值


Then restart django.


To permanently set this limit, type this:



$echo 16384 | sudo tee -a /proc/sys/fs/inotify/max_user_watches


收藏
暂无回复