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

本文解决了一个在运行Django应用时遇到的错误,该错误与Linux系统中的Inotify观察者配额达到上限有关。通过调整系统参数fs.inotify.max_user_watches,可以增加配额并解决Django的运行问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文连接:https://www.cnblogs.com/yasmi/p/5192694.html

 

 

运行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节点用完。

查看存储空间

1

$df -h

查看i节点

1

$df -i

看是那种情况。

 

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

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

解决办法

  查看目前的最大值

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

1

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

 

  增加最大值

Which is typically 8192 by default.

To increase your limit, type this:

1

$sudo sysctl fs.inotify.max_user_watches=16384

 

  永久设置最大值

Then restart django.

To permanently set this limit, type this:

1

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值