“Visual Studio Code 无法监视此大型工作区中的文件更改”(错误 ENOSPC)

当Visual Studio Code(VSCode)显示'无法监视此大型工作区中的文件更改'(错误ENOSPC)时,这表明文件观察程序句柄已用完。要解决此问题,可以增加Linux系统的inotify.max_user_watches限制,例如将其设置为524288。对于Arch Linux及其衍生版,需要修改不同的配置文件。此外,可以在VSCode设置中通过'files.watcherExclude'排除不需要监视的大型文件夹,如Python或node_modules,以减少资源占用。

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

“Visual Studio Code 无法监视此大型工作区中的文件更改”(错误 ENOSPC)

看到此通知时,它表示 VS Code 文件观察程序的句柄用完,因为工作区很大且包含许多文件。在调整平台限制之前,请确保将可能较大的文件夹(如 Python )添加到设置中(更多详细信息见下文)。可以通过运行以下命令查看当前限制:.venvfiles.watcherExclude

cat /proc/sys/fs/inotify/max_user_watches

限制可以通过编辑(除了在 Arch Linux 上,请阅读下文)并将这一行添加到文件末尾来增加到最大值:/etc/sysctl.conf

fs.inotify.max_user_watches=524288

然后可以通过运行 来加载新值。sudo sysctl -p

虽然 524,288 是可以监视的最大文件数,但如果您所处的环境内存特别受限,则可能需要降低该数量。每个文件监视占用 1080 个字节,因此假设所有 524,288 个监视都被消耗,则上限约为 540 MiB。

基于 arch 的发行版(包括 Manjaro)要求您更改不同的文件;请改为按照以下步骤操作。

另一个选项是使用该设置从 VS Code 文件观察程序中排除特定的工作区目录。排除和 下的某些文件夹的默认值,但您可以添加不希望 VS Code 跟踪的其他目录。files.watcherExcludefiles.watcherExcludenode_modules.git

"files.watcherExclude": {
    "**/.git/objects/**": true,
    "**/.git/subtree-cache/**": true,
    "**/node_modules/*/**": true
  }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值