WSL2 今天史诗级更新

2023-09-19 10:28:03 +08:00
 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 里的包了,再也不需要什么桥接网卡、端口转发之类的操作了。

42444 次点击
所在节点    程序员
194 条回复
hahasong
2023-09-19 11:53:34 +08:00
桥接都用习惯了,当虚拟机管理,咋改来改去
Biggoldfish
2023-09-19 11:56:23 +08:00
赞一个 等推送到正式版了

目前双开 WSL 1 和 2 中,需要 Windows 文件系统下用 Linux 工具用 WSL 1 ,需要更加贴近真实 Linux 或 GPU 用 WSL2
Tiande
2023-09-19 11:57:24 +08:00
还是 vmware 好用点,开了 hyperv 好多东西不能用
bing1178
2023-09-19 11:59:25 +08:00
一直用 WSL1 ,然后这波升级是 WSL2 添加了 1 的特性 。。
zed1018
2023-09-19 12:01:33 +08:00
@javalaw2010 但是支持的非常差,比如 intelliJ 的 wsl 支持到现在很多功能都不正常,而且经常会出新 bug ,甚至好不容易做的 tomcat 的运行支持到现在也是不 work 的状态,可能最新的 2.2 修复了。还是得用 gateway ,唯一的问题就是 gateway 没有 settings sync ,每个项目还独立。目前稍微好一点的方案是 intelliJ 装好配好,然后用 intelliJ 启动一个项目这样 jb client 会把 intelliJ 的配置和插件带一份过去,起码不会打开是啥也没有自定义过的状态了。
locoz
2023-09-19 12:17:02 +08:00
内存问题终于解决了…之前吃了内存就不吐出来,还得设内存限制,都不好长期开着
qing18
2023-09-19 12:17:50 +08:00
win10 怎么不能用呀,不想用 win11
arfaWong
2023-09-19 12:26:03 +08:00
已更新😁
a632079
2023-09-19 12:41:49 +08:00
可以可以,基本痛点都解决了。
javalaw2010
2023-09-19 12:42:40 +08:00
@zed1018 哦还有这种 Bug?我不是 javer 不经常用 intellij 所以不是很清楚这个 Bug 。外企好像都这风格,再严重的 bug 只要不是 security 相关的都等着发版周期,而 jetbrians 家的发版周期一年都屈指可数。。。说回来 gateway 实在是太难用,我以前考虑过直接在 wsl2 里装 jetbrains IDE 的方案,不过实验下来有几个影响体验的问题:
1. jetbrains linux 版本全系 runtime 不支持输入法跟随,输入中文的时候候选框一直在左下角的位置
2. jetbrains 全家桶不原生支持 wayland ,所以分数缩放有问题,4K 屏 150%或者 175%的缩放体验非常差
3. wslg 会在窗口包一层边框,似乎这个边框是无法去掉的
如果能接受以上的问题的话,那体验确实会比 gateway 体验好一些
cst4you
2023-09-19 12:48:12 +08:00
Windows 11 狗都不用(
wingzhingling
2023-09-19 12:50:56 +08:00
更新 win11 的动力主要来源于 wsl 和 wsa ,也是挺幽默的
javalaw2010
2023-09-19 12:52:25 +08:00
@loading 到注册表找`HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss`,这下面的文件夹里面有你发行版的名称和虚拟磁盘的路径,要救数据的话,把 vhdx 文件复制出来备份好,之后不管是虚拟机挂载还是直接新建新的 wsl2 发行版直接替换 vhdx 文件这都看你心情了。
meixg
2023-09-19 13:05:34 +08:00
真的是史诗级更新,之前挂公司代理要各种修改 resolv.conf ,这回看起来不用了。
SZP1206
2023-09-19 13:16:41 +08:00
挺好挺好,网络的痛点被解决了
tony1016
2023-09-19 13:19:42 +08:00
macOS:什么是 linux
Cu635
2023-09-19 13:22:31 +08:00
是说 win 10 之后也不会有这个更新么?

@tony1016 #56
它自己就可以算是了。macOS 本身就是类 unix ,再用 homebrew 安装一下 gun 风格的命令行工具不就基本能用了么……
tony1016
2023-09-19 13:23:46 +08:00
@Cu635 赶紧拉倒吧
limaofeng
2023-09-19 13:24:04 +08:00
就网络这块就很不错了,不知道什么时候出正式发布。之前 WSL2 吃内存吃的严重,我都是重启 WSL 来释放内存的
treblex
2023-09-19 13:25:53 +08:00
win10 使用 wsl --update --pre-release 可以找到更新,不知道有没有问题

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

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

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

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

© 2021 V2EX