首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在WSL2中打开inotify?

如何在WSL2中打开inotify?
EN

Stack Overflow用户
提问于 2021-12-08 10:17:50
回答 1查看 1.5K关注 0票数 1

inotify在WSL1工作。然后,由于GNU软件中的一个不受支持的特性,它在WSL2中被故意关闭,而这个特性现在已经解决了。

如何在WSL2中启用或打开inotify?

EN

回答 1

Stack Overflow用户

发布于 2021-12-08 13:08:05

inotify在WSL2中是受支持的,但只支持基于Linux的ext4文件系统。您可能遇到的问题是,它不能在Windows驱动器上工作,这些驱动器使用9P协议(例如/mnt/c)或指向这些驱动器上的任何文件的符号链接进行安装。

我不知道这是因为“GNU软件中的一个不受支持的特性,现在已经解决了”,也不知道它是“故意关闭的”。我的理解是,WSL团队只是没有在9P中“管道”(他们从2019 Build Conference上说的话)。

确实如此,正如您提到的,在通过drvfs挂载的WSL1驱动器上工作,对于许多开发任务来说,使用WSL1仍然是可行的选择。当然,只有当您要求所监视的文件位于Windows驱动器上时,这才是必要的。还请注意,WSL1确实为两个Linux文件系统使用了Windows驱动器(通过WSL1目录中的不同类型的覆盖),因此,如果inotify对一个文件系统有效,则可能出于相同的原因( syscall转换的相同实现),两者都能工作。

不过,如果符合您的工作流程,最简单的解决方案是将您的项目移到WSL/Linux/ext4 4文件系统上的某个地方,例如在您的$HOME文件夹下(同样,不使用符号链接)。

至于如何启用它,我认为这是不可能的。虽然9P客户端是开源的,并包含在WSL2内核Github项目here中,但据我所知,运行在Windows中并提供对这些驱动器的访问的服务器仍然是关闭源代码的。

有关更多细节,请参见this answer

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70273307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档