你这里报的错误:
Error: ENOSPC: System limit for number of file watchers reached
意思是 系统的 inotify 文件监视器数量不够。Claude CLI(实际上底层是 Node.js chokidar 文件监控库)尝试 watch 了太多文件,超过了 Linux 的默认限制。
解决方法
1. 临时修改(立即生效,但重启后失效)
执行:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
这样就把 max_user_watches 从默认的 8192 或 65536 提升到了 524288。
2. 永久修改(推荐)
编辑配置文件:
sudo vim /etc/sysctl.conf
加入:
fs.inotify.max_user_watches=524288
fs.inotify.max_user_instances=512
保存后运行:
sudo sysctl -p
检查是否生效
cat /proc/sys/fs/inotify/max_user_watches
cat /proc/sys/fs/inotify/max_user_instances
额外说明
- Claude CLI / VSCode / Webpack 这类工具都会大量用到 inotify watcher,默认值很容易不够。
- 设置大一些(比如
524288)对内存的消耗非常小,每个 watcher 只有几十字节,不必担心。
要不要我帮你写一个 一键修复脚本(支持检测当前值→自动修改→验证)?

3050

被折叠的 条评论
为什么被折叠?



