User limit of inotify watches reached
Linux系统中用于监视文件系统事件的inotify资源耗尽,通常是因为系统对文件监视数量的限制(inotify watches)已达到上限。
当前的inotify限制:
cat /proc/sys/fs/inotify/max_user_watches
临时:提高inotify的限制:可以通过执行命令来增加限制。
echo 524288 | sudo tee /proc/sys/fs/inotify/max_user_watches
永久:
vi /etc/sysctl.conf
添加
fs.inotify.max_user_watches=524288
执行
sudo sysctl -p
建议增加
fs.inotify.max_user_instances=1024 fs.inotify.max_queued_events=32768
max_user_instances
= 一个用户最多能创建多少个 inotify “监听器”
什么时候会炸这个?
同时跑很多容器
Node 面板 + 游戏服 + 监控程序
Java 程序多实例
如果不改,可能出现这种报错:
inotify_init: Too many open files
? 对游戏服主机来说,属于保险项。
max_queued_events
= 内核里 inotify 事件排队容量
什么时候重要?
日志狂刷
文件被频繁创建/删除(模组缓存、存档写入)
自动构建、热重载系统
太小会丢文件变动通知,但 不会直接导致你现在这个报错。