gpt4 book ai didi

node.js - 错误 : EMFILE: too many open files, watch ,除非我使用 sudo

转载 作者:行者123 更新时间:2023-12-03 23:33:40 30 4
gpt4 key购买 nike

描述
最近我遇到了一个问题。我无法运行 yarn startelement-web目录,我得到这些 errors .本来以为跟element-web有关所以我创建了一个 issue .一段时间后,我尝试运行 wintersmith preview bibviz 目录并得到相同的错误。这很奇怪,所以我尝试创建一个 Angular 项目并运行 ng serve并再次出错。我前往该问题以关闭它,因为它不是 element-web问题。我发现还有一个issue用同样的问题创建。已经被 turt2live 关闭了说 it looks like you've run out of memory on your system .基于此,我尝试关闭在后台运行的大多数程序,现在所有命令都可以运行。
我确定 ng serve过去用来工作。
我的 PC 有 16 GB 的 RAM,当我使用 7/16 GB 时,命令已经失败。运行命令时我看不到任何内存峰值。使用 sudo 运行命令也彻底解决了这个问题。这对我来说没有任何意义。
研究引导我到 ulimits但它们似乎没有效果。我也安装了watchman没有效果。
有人可以告诉我我缺少什么吗?
先感谢您!
信息
我在 Debian 11 Bullseye 上。这是一些可能有用的命令的输出。
作为普通用户:

> uname -a
Linux Simon-s-PC 5.8.0-3-amd64 #1 SMP Debian 5.8.14-1 (2020-10-10) x86_64 GNU/Linux
> sudo sysctl fs.inotify.max_user_watches
fs.inotify.max_user_watches = 524288
> ulimit -a
-t: cpu time (seconds) unlimited
-f: file size (blocks) unlimited
-d: data seg size (kbytes) unlimited
-s: stack size (kbytes) 8192
-c: core file size (blocks) 0
-m: resident set size (kbytes) unlimited
-u: processes 46482
-n: file descriptors 8192
-l: locked-in-memory size (kbytes) unlimited
-v: address space (kbytes) unlimited
-x: file locks unlimited
-i: pending signals 63664
-q: bytes in POSIX msg queues 819200
-e: max nice 0
-r: max rt priority 95
-N 15: unlimited
> yarn --version
1.22.5
sudo su :
> sysctl fs.inotify.max_user_watches
fs.inotify.max_user_watches = 524288
> ulimit -a
-t: cpu time (seconds) unlimited
-f: file size (blocks) unlimited
-d: data seg size (kbytes) unlimited
-s: stack size (kbytes) 8192
-c: core file size (blocks) 0
-m: resident set size (kbytes) unlimited
-u: processes 63664
-n: file descriptors 1024
-l: locked-in-memory size (kbytes) 2043392
-v: address space (kbytes) unlimited
-x: file locks unlimited
-i: pending signals 63664
-q: bytes in POSIX msg queues 819200
-e: max nice 0
-r: max rt priority 0
-N 15: unlimited

最佳答案

我想我已经找到了解决方案:

  • /etc/sysctl.conf 中设置限制通过添加:
  • fs.inotify.max_user_watches=524288
    fs.inotify.max_user_instances=512
  • 打开一个新的终端或重新加载 sysctl.conf变量与
    sudo sysctl --system
  • 运行 yarn start

  • 现在一切正常,希望如此。如果它不起作用,请尝试将限制设置得更高。

    关于node.js - 错误 : EMFILE: too many open files, watch ,除非我使用 sudo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64919108/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com