win 下的 Linux 环境选择

讨论 未结 87 51
luffy
luffy 会员 2022年8月22日 13:59 发表
<p>win 下 Linux 环境有几种选择:</p> <p>1, qemu 装 linux</p> <p>2, virtualbox 装 linux</p> <p>3, vmware 装 linux</p> <p>4, docker</p> <p>5, wsl2</p> <p>通过 vscode ssh 插件可以连到 linux 虚似机里面的项目。</p> <p>看起来是 qemu/virtualbox 装虚似机会更方便一些,可以少踩一些坑?</p> <p>从方便开发的角度来看, 不确定哪一种会更方便顺畅一些?</p>
收藏(0)  分享
相关标签: 灌水交流
注意:本文归作者所有,未经作者允许,不得转载
87个回复
  • Maboroshii
    2022年8月22日 14:59
    我觉得 virtualbox 好,但是感觉没有啥顺手的 terminal
    0 0
  • xtreme1
    2022年8月22日 14:59
    目前还是选择使用 VMware. 首先 wsl2 的文件系统性能不佳; 和宿主系统之间的互访问更是卡到流脓 其次, 作为一个 pc 硬件玩家, Hyper-V 影响我宿主系统的内存性能和一些超频工具的使用.
    0 0
  • kid740246048
    2022年8月22日 14:59
    WSL2+VScode ,配上桥接网卡,日常前端开发没问题
    0 0
  • andj4cn
    2022年8月22日 14:59
    vmware + ubuntu ,用了很多年了。商业软件就是香
    0 0
  • jobmailcn
    2022年8月22日 16:02
    vmware+archlinux 用了很多年了,前几天翻出旧笔记本,发现上面有 5 年前的 archlinux ,费了一番功夫更新到最新版,成就感满满!
    0 0
  • deorth
    2022年8月22日 16:02
    反过来,linux host windows guest
    0 0
  • ob
    2022年8月22日 16:29
    不支持 docker
    0 0
  • Osk
    2022年8月22日 16:59
    Hyper-v, 如果没有 USB 访问需求的话. 优势: hv 的性能不用说, 顶部水平的. 动态内存极好用; 自带; vhdx 文件操作方便; 劣势: 没有 usb redirection; 网络配置并不是那么的简单, 其实也不复杂, 但确实比 vbox, vmware 等难用一点点, 比如, 不能方便的创建带 dhcp 的网络; 只有一个 NAT 网络; 文件共享不便, 需要 host 或 guest 配置 nfs/smb, 不如 vbox 等开箱即用. 提示: 请使用 5.16 以上的内核, 因为 hyperv_drm 比 hyperv_fb 跑桌面流畅多了; ------------------- 为何不用 vbox: 虽然免费, 但似乎摆烂多年, 毕竟无法创造营收, 没砍都不错了; 为何不用 vmware: 收费, player 版则限制太多; 极限情况下, 比如同时跑太多虚拟机时, 性能我个人之前测试的结果是不如 hypet-v 的; 为何不用 qemu: qemu 调用哪个加速我不知道(用 whvp? 还不如 hyper-v), 但一不小心成了软件虚拟化就尴尬了; 命令行难用; 为何不用 docker? docker on windows 不就是 hyper-v 等虚拟机中跑一个 linux 来跑 docke 吧... 真正的容器只支持跑 Windows core. 为何不用 wsl? 所有 IO 性能感人 一些系统调用不支持,兼容性是问题; 为何不用 wsl2? 不希望本地文件直接能被 guest 访问, 虽然能配置不自动挂载. 没有 init 系统, 一些服务还得自己去写启动脚本; 反正都是 hyper-v, 只不过内核是微软优化过的; IP 和监听端口处理起来很烦, 一点不如自己起个 hyper-v 虚拟机方便; 同 host 交换文件使用的 9p, 个人体验极其拉垮, 甚至不如 wsl1, 不知道现在优化的怎样了, 以前信了别人的推荐用 9p, 卡死我了, 后来用 smb, 啥事都没, 快多了, 所以还是不如自己起个 hyper-v 虚拟机. ----------- 个人愚见, 有错欢迎帮忙指正😄
    0 0
  • defel
    2022年8月22日 16:59
    又买了一块固态硬盘,装了双系统,真香
    0 0
  • BeautifulSoap
    2022年8月22日 17:30
    需要方便的文件浏览,原生的 linux gui 程序支持,还有 vs code 交互端口转发的话
    0 0
  • BeautifulSoap
    2022年8月22日 17:30
    需要方便的文件浏览,原生的 linux gui 程序支持,还有 vs code 交互,端口转发的话选 wsl2 想要完整虚拟机所有一切自己折腾的话选 hyper-v ,作为 type 1 的虚拟机性能不是其他几家可以比的
    0 0
  • LiSrRbE2Mac
    2022年8月22日 19:59
    如果可以不用 usb 的,推荐 wsl2 (虽然 wsl2 也可以通过 usbip 的方式访问,但是多捞啊)
    0 0
  • raaaaaar
    2022年8月22日 20:59
    wsl2 楼上没有遇到过用着用着就不能动的情况吗?再次开一个终端也会显示超时,进不去。无论是 Arch 还是商城里的 Ubuntu ,我在完全不同的两台机子上都复现了问题,严重影响了开发。。已经考虑准备换 Mac 了。
    0 0
  • luffy
    2022年8月22日 22:59
    你的 win 是 pro 版吧?
    0 0
  • zjsxwc
    2022年8月23日 00:31
    virtualbox 吧, 不过 vbox 自带的文件共享读写性能不如 windows samba 直接把目录挂出来,然后虚拟机里 linux 挂上这个目录读写性能好。
    0 0
  • litguy
    2022年8月23日 01:29
    wsl1 是我的最爱,开个 ssh 作一般开发,需要运行的代码都是在 server 上面跑的,不在 wsl 里面跑
    0 0
  • clorischan
    2022年8月23日 01:29
    BlueStacks 4 之后版本都有可以支持 Hyper-V 的
    0 0
  • mango88
    2022年8月23日 01:29
    不折腾 docker wsl1 体验就蛮好
    0 0
  • Akiya
    2022年8月23日 01:29
    用 WSL2 开发数据库,踩过一些坑,问题不算多。还行,IO 性能不够的问题不大,反正又不用来跑 Benchmark ,本地开发最多就做下正确性测试
    0 0
  • LaoLeyuan
    2022年8月23日 01:29
    用公司的 ESXi 搭建一台个人用的 Linux ,系统选 centos 或者 ubuntu 。 我觉得这才是最优选择。
    0 0
  • hermit17
    2022年8月23日 01:29
    wsl2 挺多坑的 想稳定少折腾的话还是开虚拟机吧
    0 0
  • hanxiV2EX
    2022年8月23日 01:29
    我用的 virtualbox 装 linux ,终端用的 wezterm
    0 0
  • luffy
    2022年8月23日 02:00
    确实也是个坑,谢谢告知
    0 0
  • cheng6563
    2022年8月23日 02:00
    vmware 不然就是 visualbox hyper-v 是个大坑,基于 hyper-v 的 wsl2 也是个大坑。
    0 0
  • nothingistrue
    2022年8月23日 02:00
    不想折腾的话,就用虚拟机。虚拟机根据情况选 hyper-v 或 vmware 。内存跟磁盘溢出的话就用 hyper-v ,能发挥几乎全部 CPU 的能力( Linux 是内存机制下,hyper-v 的动态内存无法发挥效果,所以内存必须足够大才行)。CPU 溢出的话就 vmware player ,与宿主机的结合更高效。不要用没有大厂支持的 virtualbox 。 docker 跟 wsl2 其实是一回事,都是 wsl2 ,当你配置不行没法开虚拟机的时候,可以考虑 wsl2 。
    0 0
  • rickiey
    2022年8月23日 03:01
    wsl 放弃吧,不如虚拟机挂盘,virtualbox 网络就是个垃圾,踩过坑,推荐 VMware
    0 0
  • victorc
    2022年8月23日 03:01
    以前一直用 vagrant ,就是 virtualbox 套壳,有 wsl2 ,无脑选 wsl2
    0 0
  • cxh116
    2022年8月23日 03:01
    反着来, 虚拟机里装 win ,还能隔离 win 病毒,保护你的代码安全.同时宿主机跑 linux,代码开发时,性能最强! 🐶
    0 0
  • luffy
    2022年8月23日 03:01
    虚似机装 win ,是不是得折腾激活,正版之类的?现在买机器不是都自带 win 正版嘛? 虚似机里面的 win 得找破解?
    0 0
  • wupher
    2022年8月23日 03:28
    wsl2 ,但只是日常开发,交叉编译。 主力还是 Mac 。 有小坑,但不多。
    0 0
  • cxh116
    2022年8月23日 03:28
    win 不激活现在也可以用的,只是显示提示. 你的机器本来有授权,所以不存在盗版问题. 不是激活了就是正版,没激活就是盗版,主要还是看你花钱了且在合理的使用范围内.
    0 0
  • jitongxi
    2022年8月23日 03:28
    直接转 linux 桌面版一了百了, 拿起 e3 老爷机,跑的飞快。
    0 0
  • butanediol2d
    2022年8月23日 03:58
    #39 VMWare Workstation Player 不是可以免费用吗?我觉得已经足够了。
    0 0
  • seakingii
    2022年8月23日 04:28
    vmware + ubuntu , 虽然有点性能损失,但系统的兼容性好.
    0 0
  • nkidgm
    2022年8月23日 04:28
    wsl2 当 Linix 的命令行工具来使用挺好用的,但跑服务非常不好用,比原生 Linux 还要折腾。
    0 0
  • jdz
    2022年8月23日 04:58
    hyper-v 与 host 共享硬件么, 比如 vmware, 分配 20g, 那么他就只能用 20g, 即使主机 64g. 而 wsl2 就与主机共享这些硬件, 这点很好
    0 0
  • jdz
    2022年8月23日 04:58
    羡慕, 我司就没有
    0 0
  • Krime
    2022年8月23日 05:58
    日常还是更喜欢用 wsl1 ,访问真实文件系统速度快些。而 wsl2 的话,子系统文件访问速度不错,但是从真实系统访问(比如开发过程中手动整理静态资源等)要麻烦一些。 涉及到更低层需要更完整的 linux 环境时,就改用 virtual box 的虚拟机,挂载设备进去基本能解决 80% 的问题。
    0 0
  • sophos
    2022年8月23日 05:58
    必然是 wsl2 ,既然选择了 windows 就跟着微软的路线走
    0 0
  • qooweds
    2022年8月23日 05:58
    每个人场景不一样,可能体验也不同 我的场景是轻度使用 vmware ,但是需要不同的网络模式,在桥接和 NAT 之间切了好几次,最后还是没有满足我的需求。也可能是我不太会用的原因 WSL 装好就能用,而且不用折腾网络,轻度使用还是蛮方便的
    0 0
  • xp1zzz
    2022年8月23日 06:28
    请问一下性能影响是因为 Hyper-V 开启以后宿主机也被虚拟化吗?
    0 0
  • xtreme1
    2022年8月23日 06:28
    是的. 其实 Hyper-V 对宿主机的影响, 使用上都是无感觉的, 但 pc 硬件玩家玩的就是那点跑分, 哈哈
    0 0
  • PowerDi
    2022年8月23日 06:28
    我有一个问题 wsl2 的 ubuntu 是常驻的吗?
    0 0
  • PowerDi
    2022年8月23日 06:28
    譬如开机我没有开启 wsl 命令,但是 vscode 能通过 wsl remote 插件直接使用。这是不是意味着正常情况下,我是两个系统一直在运行的,放在笔记本上续航是不是影响就比较大了(在不需要用 ubuntu 的情境下)
    0 0
  • ceno
    2022年8月23日 06:28
    为啥需要 ssh 链接 linux 里的项目,项目都放 windows 里不行吗
    0 0
  • luffy
    2022年8月23日 06:28
    你这边如果要用 win 里面微信了? 切换窗口不太方便的吧?
    0 0
  • ltkun
    2022年8月23日 06:58
    wsl2 变得更加 Linux 了 那天甚至编译了 5.15lts 版内核 不过 Windows 有个缺点一开这些风扇就高速转 而 Linux 下风扇基本没反应 可能调控策略不一样
    0 0
  • pkwenda
    2022年8月23日 06:58
    IDEA 下选 jdk 选不了 WSL2 里面的
    0 0
  • cwcc
    2022年8月23日 06:58
    如果只是搞开发的话,我个人其实比较看好 JB 家的 Gateway ,只是现在 Bug 还是有点多,但能直接把 IDE 跑在 Linux 系统上,UI 在 Windows 上这种思路我觉得是比较好的,除了对网络要求不低外其他还好。然后 Linux 系统你可以买高性能服务器,也能装个虚拟机。 WSL2 更适合平时用一些不带服务和守护的 cli 的东西,如果做网络、做桌面环境用虚拟机显然更合适。毕竟微软的想法肯定是想把 Linux 融合到 Windows 里面,但最终底层还是两个系统,总会有隔阂,要么就不分开,要么就完全分开。 Docker 在 Windows 也属于虚拟机的范畴了。
    0 0
  • cxh116
    2022年8月23日 06:58
    可以多桌面. 用快捷键切换到虚拟机桌时,如果虚拟机里微信默认是打开的,还是很快.跟在 win 下切换多桌面快速定位到应用没什么差别.
    0 0
  • cxh116
    2022年8月23日 07:28
    如果有多屏幕就更加简单了,win 虚拟机一个屏幕,linux 使用一个屏幕,使用起来特方便.
    0 0
  • cnoder
    2022年8月23日 07:28
    还是喜欢 vagrant+virtualbox+linux,用 termius
    0 0
  • luffy
    2022年8月23日 07:58
    看起来你并没有 c# 相关开发的需求
    0 0
  • luffy
    2022年8月23日 07:58
    vmware 看起来可以动态调整硬盘大小? 比如一开始只设定了 30G ,后来发现不够用了,可以后期额外增加?
    0 0
  • hakr
    2022年8月23日 07:58
    #71 我记得能选来着 有个 \\wsl$ 目录好像
    0 0
  • anubu
    2022年8月23日 08:28
    Hyper-V 长期使用者,推荐 Hyper-V 。 不过 Hyper-V 还是有巨坑,本来网络配置就不如其它的好用,坑的是会有兼容性问题,特别是无线网卡,这种问题是会影响宿主机级别的,其它虚拟化很少碰到会影响宿主机的问题。如果和你的硬件兼容性足够,还是推荐的。
    0 0
  • dcsuibian
    2022年8月23日 08:28
    不推荐 virtual box ,虽然这东西开源免费,但是实在是太不好用了,在 win 和 mac 上都卡的一批 性能和易用性上我觉得甚至都比不上隔壁 vmware 的 player 、fushion 还是老实付费 要么就是 VMWare Workstation Pro ,要么就是 Hyper-V 。 个人感觉 Hyper-V 还是挺好用的,而且和 Windows 集成度高,关闭窗口后后台仍然在运行,完全无感 而且 windows 专业版还有其它好用的功能,感觉在这上面花钱更值
    0 0
  • mrpzx001
    2022年8月23日 08:58
    wsl2+docker 完美,任意环境随手就可以创建
    0 0
  • vopsoft
    2022年8月23日 08:58
    vmware 网卡是百兆 virtual box 是千兆 这个+vagrant 好用 Hyper-V 是万兆
    0 0
  • SenLief
    2022年8月23日 09:28
    wsl2 文件系统不加,那就不用宿主的文件系统好了。
    0 0
  • aonshuy
    2022年8月23日 12:58
    用不到了就直接 wsl --shutdown ,开机不自启,vscode 插件现启动的,只不过启动很快基本无感所以你觉得能直接使用
    0 0
  • leaves98
    2022年8月23日 12:58
    #83 docker desktop ?还是 wsl2 里面用 docker ?
    0 0
  • FrankHB
    2022年8月23日 18:29
    我用 WSL1+VMware 。 WSL1 当主力,是因为共享资源方便程度上无可替代,虚拟机始终低人一等。(当然非得拿 Win32 app 作死直接编辑 DrvFs 下的文件搞烂了另说。)磁盘 IO 能比原生 NTFS 更快,相比之下挂 vhd 就很看脸了。 缺陷同样明显:内核残的没法用内核模块,一些系统调用实现不全,只有 x86_64 ;不能换 init ;但是大多数情况没什么问题,或者有变通。 没图形硬件加速,但配合 VcXsrv 日用桌面问题不大。 遇到解决不了的需求(很少)再用更重量级的虚拟机。 虚拟机有虚拟机的通病(不是一台机器)和优点(不是一台机器但你真的需要不同的机器;以及快照)。 Hyper-V 就不是设计出来给桌面系统用的,别指望什么体验。hyperv_fb 卡得没法用,还不支持高分屏。hyperv_drm 没试过不过我懒得折腾了。 以前用 Hyper-V 还有和其它虚拟机(包括一些安卓模拟器)共存的问题。现在开 Hyper-V+虚拟机平台用比较新的虚拟机问题不大,但仍然可能是个问题。安卓模拟器能用的就 BlueStacks Hyper-V 版。 VirtualBox 就是摆烂。之前试了下,默认还是卡翔(虽然没 Hyper-V 那么夸张),配置 Hyper-V 共存出错发现论坛里的根本都不清楚自家产品的最新功能。不折腾了。 开箱即用的基本也就 VMware 了。 至于 WSL2……都自己搭建环境了,非要用还不如全功能的正经虚拟机。而且至今还有 250G 硬盘限制。 你是不是把 WSL1 和 WSL2 的 IO 性能感人程度搞反了?
    0 0
  • wangxiaoaer
    2022年8月23日 23:01
    听楼上一位大哥说 hyperv 性能最好我差点都信了。一年前试过卡出翔,还以为改进很大呢。
    0 0