以前觉得 windows 不务正业,还搞一个 wsl 子系统进来做什么,安装一个虚拟机不就可以搞定。现在慢慢有了一些新体会。
首先,wsl 确实比虚拟机要轻量,安装完 ps 一下进程就明白,很干净,没有多余的进程。 另外,互操作性不错,可以直接在 wsl 中运行 windows 命令(也有 tab 键补全命令)。两者的文件系统也可以互相打开。 现在,又可以将 vscode 挂到 wsl 中来开发,那真是爽了,毕竟用 linux 做开发环境,后端依赖库和软件包更新都很方便。又可以解决没有前端 IDE 编辑器的问题。
有了这些能力,win10 系统被我保留了下来,不然早就格式化安装 linux 了。当然,使用中也发现一些问题,比如:
1
xtreme1 2022-06-21 16:15:49 +08:00 7
windows 访问 wsl2 的服务, 微软做了兼容, 直接用 127.0.0.1 就可以了
wsl2 访问 windows 主机可以用 主机名.mshome.net 主机名:Windows 设置--系统--关于--设备名称的小写 wsl 的文件权限 微软文档很清楚了 https://docs.microsoft.com/zh-cn/windows/wsl/file-permissions |
2
stormlin 2022-06-21 16:53:01 +08:00 1
那你这个反正都是 vscode remote ssh ,那和直接 virutal box 又有什么不同
|
3
mayday526 2022-06-21 17:10:19 +08:00
文件如果在宿主机这边,编译很慢
|
4
shea 2022-06-21 17:18:25 +08:00
我现在也是用的这种方式, 相比较直接在 linux 上开发, 还是很香的, 不过 idea 貌似没有像 vscode-remote-wsl 插件的方便, 有个远程开发, 发现还是不尽人意, 在这里求一个解决方案
|
7
kid740246048 2022-06-21 18:21:41 +08:00
目前已经可以设置静态 ip 了,只是需要 wsl 版本大于 0.51.2
参考: https://github.com/microsoft/WSL/issues/4150#issuecomment-1018524753 |
8
libook 2022-06-21 18:29:14 +08:00
我在 Windows 上用 Cygwin 装 XServer ,然后在 WSL2 里装 IntelliJ ,可以直接投到 Windows 的 XServer 上,使用起来跟直接在 Windows 上跑 IntelliJ 一样。
WSL 内尽量使用自己的文件系统,建议仅在需要文件传输的时候才在 WSL 内部访问 Windows 的文件系统,以避免一些兼容性和 hook 问题。 |
9
clf 2022-06-21 18:32:15 +08:00
wsl2 的 io 性能感觉有点难受,整体查询会比直接在 VMware 里跑 linux 慢一些?
|
10
zed1018 2022-06-21 18:58:03 +08:00
> wsl 中挂的 win 文件系统,文件权限和属主( chmod/chown )好像有问题,全是 root ,777 。 不知道怎么处理比较好?
user 的部分应该是跟你安装发行版的默认用户有关,我这里是我当时创建的用户是 owner 。然后权限的话默认确实是 777 ,但是可以在 /etc/wsl.conf 里调 u/f/dmask 。参考这个 https://docs.microsoft.com/zh-cn/windows/wsl/wsl-config#wslconf https://i.imgur.com/XWIvwbu_d.webp |
11
zed1018 2022-06-21 18:59:43 +08:00
|
12
imycc 2022-06-21 19:06:29 +08:00
之前阻碍我从虚拟机切换到 wsl 的最大问题就是这个 umask ,看着难受,虽然可以自己配置,但总觉得微软这么搞可能有它的理由,干脆不用了。
|
13
MEIyiyi 2022-06-21 19:09:47 +08:00 via Android
wsl 我也装,但运行速度没 cmd powershell 快
|
14
bthulu 2022-06-22 08:10:35 +08:00
写个 js 用什么 wsl, 是 windows 下不能开发么?
|
15
cheng6563 2022-06-22 10:06:00 +08:00
再用用,你会用回 vm 的
|