WSL2 今天史诗级更新

283 天前
 hez2010

今天 WSL2 更新了 2.0.0 版本,详细更新内容见: https://github.com/microsoft/WSL/releases/tag/2.0.0

总结一下主要是:

  1. 支持自动回收内存
  2. 支持自动释放 WSL2 虚拟硬盘空间
  3. 支持和 Windows 使用相同的网络(镜像网络)
  4. 支持 DNS Tunneling
  5. 支持 Windows 设置的代理
  6. 支持 Windows 防火墙
  7. 支持 Multicast

需要至少 Windows 11 23H2 ,目前还没有发布正式版本,不过可以考虑加入 Insider 的 Release Preview 或者 Beta 通道,更新系统之后运行 wsl --update --pre-release 升级 WSL ,然后就可以在 %userprofile%\.wslconfig 里面设置以下内容:

[experimental]
autoMemoryReclaim=gradual # 可以在 gradual 、dropcache 、disabled 之间选择
networkingMode=mirrored
dnsTunneling=true
firewall=true
autoProxy=true

然后你会发现,WSL2 和 Windows 主机的网络互通而且 IP 地址相同了,还支持 IPv6 了,并且从外部(比如局域网)可以同时访问 WSL2 和 Windows 的网络。这波升级彻底带回以前 WSL1 那时候的无缝网络体验了,并且 Windows 防火墙也能过滤 WSL 里的包了,再也不需要什么桥接网卡、端口转发之类的操作了。

33055 次点击
所在节点    程序员
194 条回复
WashFreshFresh
283 天前
试了下,wslg 正在更新 2.0.0
jamosLi
283 天前
@x1aoYao 可以了,就开始一段时间是屎坑。现在有更新就更,用起来还行。就是 win10 老毛病,偷吃内存。
happyxhw101
283 天前
我随手就抛出一个 linux 单系统
leeyuzhe
283 天前
自动回收内存,自动回收硬盘,使用 windows 代理全是我的痛点
LitterGopher
283 天前
@wildman9527 可是,我还有一台 mac 啊🤣。
lilei2023
283 天前
为啥 win10 不信啊,烦烦烦
junkk
283 天前
@javalaw2010 #20 意思是把挂载 win 的目录改成 直接在 wsl2 里创建项目,然后挂载 wsl2 的目录到 docker ,然后 phpstorm 打开 wsl2 的目录开发么?


这种对 debug 会有影响吗?

之前搜到过这种方法,总感觉有点怪加上麻烦,就没这么用
x86
283 天前
支持 Windows 设置的代理这个太好了
WashFreshFresh
283 天前
wslg 更新后配置了新的选项,提示这个

wsl: Hyper-V 防火墙不受支持
wsl: 不支持镜像网络模式,正在回退到 NAT 网络
wsl: DNS 隧道不受支持
loading
283 天前
搭车问:
wsl2 的虚拟硬盘是哪个文件,如果 win 炸了,我用 winpe 能不能救出里面的数据?(我是说我万一有个小文件在里面)
hez2010
283 天前
@WashFreshFresh 仔细看原文,你系统版本不够要求。
pkoukk
283 天前
@junkk #27 没用过 jb 家的东西,但是 vscode 是通过 remote 的方式进行的,在 wsl 里起一个 vscode server ,你在 windows 里的 vscode 编辑会传送给 server ,然后 server 修改 wsl 系统下的文件。虽然说起来很繁琐,但是实际体验和直接编辑 windows 目录下的文件没有区别,甚至更好,因为 vscode 的内置 terminal 也会直接在 wsl 下运行。
可以找找试试 jb 家的 remote ,应该也是支持 wsl 的
javalaw2010
283 天前
@junkk #27 没问题的,phpstorm 发现是 wsl2 内的项目会自动启动 wsl2 的支持,docker desktop for windows 的话,也会自动启用对默认 wsl2 发行版的支持,你直接在 wsl2 内敲 docker 命令就可以了,对 phper 来说的话,除了创建项目的目录改变了,其他的变化几乎是透明的。
javalaw2010
283 天前
@pkoukk 不用 remote 也支持的,windows 上的 jetbrians IDE 会往 wsl2 里塞一个进程,通过通信解决一些跨系统的问题。
iold
283 天前
这就去更新一下
noahhhh
283 天前
@daya 没问题
binaryify
283 天前
镜像网络太好了
tsanie
283 天前
这两个月应该就发 23H2 正式版了,不想再进 insider 了
gam2046
283 天前
insider 进了一次 我就放弃了,BSoD 好几次,一时半会也退不出来,被迫重装系统,然后是浪费了好多时间。

老老实实等正式版本的推送吧。
sayakafs
283 天前
开了这玩意儿就不能进行虚拟机嵌套了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/975098

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX