2121 年俺 Windows 快乐编程的正确姿势

2021-05-19 22:21:08 +08:00
 inhzus

TLDR:hyper-v + virtual switch + Windows terminal ssh + x410

由于楼主日常开发 C++ 服务端,对 linux 环境强需求。读书时电脑只安装 arch Linux 非常方便,工作后在公司 mbp 用 docker 解决。去年年底买了台电脑玩游戏之余,捣鼓了一些开发环境解决方案,总算找到了最完美的办法,分享给 v 友。

已知使用 WSL2 的种种问题如下

我的解决方法:

  1. hyper-v 创建虚拟机;

  2. hyper-v 中创建一个虚拟的 internal switch,给 host 和虚拟机都绑定静态 ip,再 nat 给这个交换机联网;

  3. hyper-v 的虚拟机原生可以开机自启,比 vmware 方便、轻量多了;

  4. 部署 openssh server,Windows terminal 加一个配置默认 ssh 至虚拟机;达到了和 wsl 一样的打开 terminal 就可以使用;

  5. 买了个 x410 软件,类似于 vcxsrv,但是对高分屏的支持更好,界面也更友好;这样也支持了使用 gui 的软件,clion 、google chrome 用起来比 wslg 流畅很多!

唯一的问题只剩下文件共享不如 wsl 方便,但是既然开发环境都已经搬上虚拟机了,Windows 里边也就不要再放开发相关的东西了吧,极少情况需要的时候用 sftp 客户端也并不麻烦🐶

7177 次点击
所在节点    Windows
32 条回复
theprimone
2021-05-20 10:26:08 +08:00
我前端,升级 WSL 2 之后不能访问主机上的服务很蛋疼,前段时间解决了这个问题:

https://github.com/microsoft/WSL/issues/4619#issuecomment-821142078
hulala1021
2021-05-20 11:52:15 +08:00
wsl2 前断时间用了一下,感觉很吃内存。。
又用回 virtualbox,感觉现在 virtualbox 越来越好用了
harwck
2021-05-20 13:01:34 +08:00
Dual boot 才是最佳的解决方案
BeautifulSoap
2021-05-20 14:00:37 +08:00
@hjahgdthab750
C:\Users\[用户名] 目录下新建个文本文件,文件名 `.wslconfig`,内容:

```
[wsl2]
memory=5GB
```
除了内存,还有其他选项可以选,如指定 kernel,禁用 swap 之类的,参考: https://github.com/MicrosoftDocs/WSL/blob/master/WSL/wsl-config.md#wsl-2-settings
charlie21
2021-05-20 14:17:17 +08:00
Win 10 Home 版本的系统不支持 Hyper-V 虚拟机(但可以用 wsl 2 )
Full Hyper-V is not available in Home.
https://github.com/MicrosoftDocs/WSL/issues/899#issuecomment-690753034
arphone
2021-05-20 16:34:40 +08:00
WSL2 不支持串口太蛋疼了
imycc
2021-05-21 14:20:58 +08:00
vmware 我挂了个文件夹共享,然后放到了快捷访问上。日常就一些小脚本需要把数据导出来,执行完复制出来就好,没有什么不适。

vscode remote development 真香,我用了四五年 vim 然后叛变了。
junksheng
2021-05-24 20:52:16 +08:00
@edk24 太麻烦了,本来也是这样想的,但我发现我懒得关机,关机切换后浏览器那些东西又要重开
edk24
2021-05-25 09:38:53 +08:00
@junksheng windows 不关机好像是会越来越慢,但现在也不一定 关机还是要适当关机的。 不然一个突然停电你失去的东西更多~~~
junksheng
2021-05-25 09:47:58 +08:00
@edk24 一般只有更新才关机了,以前会变卡现在不会了...实在是懒
Rorysky
2021-12-27 17:20:35 +08:00
@kekxv 一个人用 编译 chache ?
Rorysky
2021-12-27 17:34:13 +08:00
@justrand vagrant 就是虚拟机,没啥区别

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

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

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

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

© 2021 V2EX