我正在尝试排除在最新 Windows 11 Pro 安装中运行的 WSL 2 中的 Ubuntu VM。
问题是当 Windows Defender 处于活动状态时,我的本地构建速度非常慢。设置如下:
Java、maven、docker和代码都安装在ubuntu虚拟机内。
我在 Windows 中使用 IntelliJ 2022.1 使用 wsl 路径运行和构建项目:
\\wsl$\Ubuntu\home\<user>\<maven project>
这可以工作并从虚拟机识别正确的 JDK 等。问题在于“反恶意软件服务可执行文件”进程会阻塞所有 I/O,并使构建速度极其缓慢。(卡住了 40 分钟慢)
一旦我停用 Windows Defender 的实时保护,构建速度就非常快 ->
https://medium.com/@leandrocrs/speeding-up-wsl-io-up-than-5x- fast-serving-a-lot-of-battery-life-cpu-usage-c3537dd03c74
这当然会让系统基本上失去保护,这不是一个真正的长期解决方案。
我阅读了很多关于这个问题的文档和不同的线程,但几乎所有都是关于 WSL 1 并建议更改为 WSL2。特别是这个线程有很多关于这个主题的信息:https://github.com/Microsoft/WSL/issues/1932
主要方法是排除 Windows Defender 扫描的特定文件夹,该文件夹存在于 WSL 1 中,但在 WSL 2 中不再存在。这是因为 WSL 2 现在使用 ext4 映像,并且不再公开本地文件夹。我对 WSL2 尝试了相同的方法。
最重要的一项是我的虚拟机的:
\\wsl.localhost\Ubuntu
这不起作用,并且不会排除 Windows Defender 扫描虚拟机内的我的项目。
有谁知道如何从 WSL 2 VM 中排除文件夹/文件?
我的 Windows Defender 排除项
java windows-defender maven windows-subsystem-for-linux wsl2