V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
EricSTG
V2EX  ›  程序员

wsl1, wsl2, VMware 如何选择

  •  
  •   EricSTG · 260 天前 · 14856 次点击
    这是一个创建于 260 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前在用破解版的 vmware, 安装了无桌面版的 centos7, 需要用到 docker, nacos 自启动的服务

    想问 4042 年了是时候全面切换到 wsl2 了嘛

    第 1 条附言  ·  260 天前
    感谢各位大佬的建议, 决定迁移到 Hyper-V
    104 条回复    2024-06-24 14:58:29 +08:00
    1  2  
    iold
        1
    iold  
       260 天前
    反正 我是 WSL2
    ysc3839
        2
    ysc3839  
       260 天前 via Android
    我目前还在用 VMware ,因为还要虚拟 Windows 和 macOS ,开启 Hyper-V 的话 VMware 虚拟 macOS 似乎会有问题。
    同时还有玩游戏的需求,开启 Hyper-V 后疑似会影响主机的游戏性能。
    gav1nwwk
        3
    gav1nwwk  
       260 天前
    我在公司仍着一台破电脑,内网开发用,外网的话找个 vps ,或者 ddns 家里
    Akitora
        4
    Akitora  
       260 天前
    Hyper-V 单独装一个 linux 虚拟机
    ixiaohei
        5
    ixiaohei  
       260 天前   ❤️ 5
    不知道建议合不合适,建议换 mac
    Rache1
        6
    Rache1  
       260 天前
    不知道什么原因,我的 VMware 16 好卡,都是安装在固态的,硬件配置也够用,CPU 虚拟化也启用了,Win 11+ i5 12600
    Yuhooo
        7
    Yuhooo  
       260 天前
    以前用 VMware 正常(win10),换了新电脑(win11)之后,也不知道是系统不兼容还是硬件不兼容,VMware 下 ubuntu 特别容易桌面卡死(鼠标键盘无反应,后台正常),废了很长时间怎么修改都解决不了这个问题,最后只能用 WSL2 环境了,不过 WSL 坑也不少,特别是配置网络问题较为麻烦
    Takizawa
        8
    Takizawa  
       260 天前 via Android
    @Yuhooo wsl2 还有一个硬伤:没有 usb 摄像头驱动。
    jfcherng
        9
    jfcherng  
       260 天前   ❤️ 1
    @Yuhooo #7 可以試試在 .vmx 設定檔加入以下解決了

    keyboard.allowBothIRQs = "FALSE"
    keyboard.vusb.enable = "TRUE"
    fsdrw08
        10
    fsdrw08  
       260 天前 via Android
    hyper-v
    EricSTG
        11
    EricSTG  
    OP
       260 天前 via Android
    @ixiaohei 最近 win11 蓝屏有点频繁,确实有点换 mac 的念头😅
    wildman9527
        12
    wildman9527  
       260 天前
    VirtualBox
    wildman9527
        13
    wildman9527  
       260 天前
    @Yuhooo #7 开虚拟机就不要装桌面版了, 直接 Server 版不香么!
    424778940
        14
    424778940  
       260 天前
    @Yuhooo 这个问题 win10 也遇到了
    gentrydeng
        15
    gentrydeng  
       260 天前 via Android
    我是开 WSL 2 和 Hyper-V 后偶尔用 VMware 。
    ByteCat
        16
    ByteCat  
       260 天前
    HyperV 全家桶,包括 WSL2 之类的
    kikyou12138
        17
    kikyou12138  
       260 天前
    wsl2 debian 上面跑了个 docker ,稳的很
    AFOX
        18
    AFOX  
       260 天前
    wsl2
    mason961125
        19
    mason961125  
       260 天前
    Hyper-V
    kaiveyoung
        20
    kaiveyoung  
       260 天前 via Android
    wsl2+挂载硬盘或虚拟磁盘
    szdosar
        21
    szdosar  
       260 天前 via iPhone
    单分 128G 分区,物理机上 ubuntu
    MEIerer
        22
    MEIerer  
       260 天前
    wsl2 啊
    EricSTG
        23
    EricSTG  
    OP
       260 天前
    @wildman9527 #12 之前用过一段时间, 发现挂在后台占用比较大, 之后就没用过了
    6F321i77Df1W0Zka
        24
    6F321i77Df1W0Zka  
       260 天前   ❤️ 1
    VirtualBox + vagrant
    Joshua999
        25
    Joshua999  
       260 天前
    经常用 usb 以及串口,wsl2 方便吗?
    comlewin
        26
    comlewin  
       260 天前
    VMware 吧,实际占用资源感觉比 wsl 低
    sorrowlikeblue
        27
    sorrowlikeblue  
       260 天前   ❤️ 1
    @Joshua999 可以的。可以收搜一下 usbipd
    Trim21
        28
    Trim21  
       260 天前 via Android
    wsl 在我机器上经常遇到 cpu100%的问题,换 VirtualBox 了
    coderzhangsan
        29
    coderzhangsan  
       260 天前
    没有什么好纠结的,有时间有精力可以几个多折腾一下,哪个适配你的系统稳定性高用哪个,毕竟只是个开发工具而已。
    weenhall5
        30
    weenhall5  
       260 天前
    win11 下用的 WSL2,可以使用 docker
    chenliangngng
        31
    chenliangngng  
       260 天前   ❤️ 2
    如果不考虑盗版问题,前两个和最后这个比就是 lj
    wangkun025
        32
    wangkun025  
       260 天前
    不需要图形的话,用 vagrant 搭配 virtualbox 或者 vmware workstation player 都可以。后者对个人免费。
    iorilu
        33
    iorilu  
       260 天前
    只用用 linux 直接用 wsl2 就行, 需要多个可开多个, 方便的很
    lxqxqxq
        34
    lxqxqxq  
       260 天前
    win11 WSL2
    JayZXu
        35
    JayZXu  
       260 天前   ❤️ 1
    如果只是用 docker 的话,wsl2 已经非常好用无脑了,性能和效率一定是大于 vmware 的

    如果是桌面系统 linux 的话,wslg 目前还是不是特别好用,不过搭配 X410 的话,也能获得不错的开发体验
    FawkesV
        36
    FawkesV  
       260 天前
    win11 的 wsl2 我用起来很好用. 装的 docker
    ashong
        37
    ashong  
       260 天前
    docker + wsl2

    其它 WLSL 1 更方便轻量
    dif
        38
    dif  
       260 天前
    wsl2,vm 都用。
    elonlo
        39
    elonlo  
       260 天前
    WSL2
    yudoo
        40
    yudoo  
       260 天前
    @ixiaohei mac 有什么好用的终端工具推荐吗, windows 的那个 MobaXterm 就挺好用的, mac 找了好久没找到合适的
    EricSTG
        41
    EricSTG  
    OP
       260 天前
    @yudoo 目前在用 tabby
    Dogtler
        42
    Dogtler  
       260 天前 via iPhone
    Termius
    andyskaura
        43
    andyskaura  
       260 天前
    只是开发的话,win10+wsl2 挺好的
    jianrenjun
        44
    jianrenjun  
       260 天前
    wsl2+hyper-v
    xw
        45
    xw  
       260 天前 via iPhone
    wsl2
    FengMubai
        46
    FengMubai  
       260 天前
    2024 年的 Windows, 你可以选择:
    wsl2 + VMware, 或
    wsl1 + VMware, 或
    wsl1 + wsl2 +VMware
    Nasei
        47
    Nasei  
       260 天前   ❤️ 1
    首先,mac 的 docker 也是虚拟机,反而 windows 还有原生的 win 容器,其次当需要 x86 容器的时候,mac 的模拟性能非常酸爽
    Nasei
        48
    Nasei  
       260 天前
    单说 docker ,wsl2 的 windows 吊打 mac
    libook
        49
    libook  
       260 天前
    Docker 给 Windwos 和 Mac 提供的 Docker Desktop 曾经带给我非常差的体验,bug 多而且全是商业化私货。

    你可以参考这个看试试能不能在 WSL2 里直接安装 Docker-CE ,而不是用 Windows 上的 Docker Desktop https://onlyutkarsh.medium.com/running-docker-in-wsl2-ubuntu-distro-without-docker-desktop-6ec495e8bb4d

    也可以虚拟机里跑个 Linux 然后再跑 Docker ,启动参数里打开 TCP 的 RPC ,然后 WSL2 上配置一个 DOCKER_HOST 环境变量就可以直接调用远程的 Docker daemon 进行操作了。

    WSL1 和 2 之间,如果不是对 WSL 和 Windows 的互操作性需求特别高,还是建议 WSL2 。

    开虚拟机的话,对虚拟机的配置的丰富性没有强需求的话,Windows 自带的 Hyper-V 就够用了。
    nightRainAnnoy
        50
    nightRainAnnoy  
       260 天前
    我手贱, 把 Hyper-V 的虚拟网络给删掉了。 然后一直没找到解决方案。
    yangzzzzzz
        51
    yangzzzzzz  
       260 天前
    wls2 ,docker 之类的折腾一下也能用
    dddd1919
        52
    dddd1919  
       260 天前
    把 win 上用的好好的 wsl1 升级到 wsl2 ,网络挂掉,玩完
    Cola98
        53
    Cola98  
       260 天前
    wsl2 和 VMware 都在用,如果平时使用 IDE ,比如 Goland ,IDEA 这些使用 WSL2 IO 占用会很高,docker 体验上目前没有感觉到有什么问题,自启动服务,现在也支持 systemctl 。
    bjfane
        54
    bjfane  
       260 天前
    看过一个测评 hyper-v,exsi,promox 三个在虚拟化损失性上都在 95+,其他 ikuai,openwrt 这种的都是垃圾。 非招杠,只是我看到的。目前用 hyper-v
    这三个在易用性,可玩性(直通等)上有差别。
    ixiaohei
        55
    ixiaohei  
       260 天前
    @yudoo mac 终端比较多,但是我尝试的不多;我一般使用 iterm ,觉得 iterm 不错一直在使用这个;以前尝试 warp 也不错。
    另外建议 zsh ,且可以尝试一下 oh-my-zsh ;缺点是装多了插件会卡。
    Yuhooo
        56
    Yuhooo  
       260 天前
    @jfcherng 好像是好了,我再多试试,非常感谢。
    Yuhooo
        57
    Yuhooo  
       260 天前
    @wildman9527 编码环境需要,涉及到 QT 、交叉编译等
    jqtmviyu
        58
    jqtmviyu  
       260 天前
    @yudoo #40 我从 alacritty 换到 kitty
    jqtmviyu
        59
    jqtmviyu  
       260 天前
    @Nasei #48 orbstack 怎么样? 反正启动 linux 非常快, 用来编译过好几个路由固件和 linux 内核了, 非常方便.
    zbatman
        60
    zbatman  
       260 天前
    hyper-v 虚拟机,加个 nat 网络跟 vmware 一样的体验
    wsl2 之前用的时候有个问题:开机后不会自动启动 docker ,需要敲命令才能解决,不知道现在还有没有了
    CodeAllen
        61
    CodeAllen  
       260 天前
    综合来说,在 Windows 上 HyperV 是效果最好的;我用 VMWare 遇到过特定场景下 centos 网卡离线问题,手动重启网卡可以恢复,VMWare 更新了几个版本问题依旧在; WSL 环境下还是有些兼容性问题,不如原生 Linux 系统好用,典型的问题就是 docker ; HyperV 下遇到比较麻烦的问题就是虚拟机 IP 不固定的问题,这个倒是可以通过 mDNS 解析虚拟机 hostname 解决,不会太影响使用。
    ZXiangQAQ
        62
    ZXiangQAQ  
       260 天前
    买一台小主机接到路由器上当开发环境
    s1461a
        63
    s1461a  
       260 天前
    @kikyou12138 我想请教一下,wsl2 debian ,镜像网络,docker bridge 模式怎么才能连接(只有用 host 模式才正常,但是 host 模式不能映射端口)
    taotaodaddy
        64
    taotaodaddy  
       260 天前
    Hyper-V
    nicocho
        65
    nicocho  
       260 天前 via Android
    借个楼问问,在用 wsl2 ,但 win 下面的 idea 直接访问 wsl2 的工程,总是卡,有知道怎么弄的大佬么? jvm 已经用 wsl2 里的了
    Flourite
        66
    Flourite  
       260 天前
    virtualbox+vagrant 最方便,虽然性能不咋地,但你本地开发真的要性能还不如买个 pc 做服务器。vmware 太耗资源,wsl 固定 IP 的问题解决了没
    bs10081
        67
    bs10081  
       260 天前
    @yudoo Warp
    bs10081
        68
    bs10081  
       260 天前
    @libook 直接用 OrbStack 的話,我覺得會好非常多,我開 Docker Desktop 內存佔用 4GB ,OrbStack 內存佔用 1GB
    cdlnls
        69
    cdlnls  
       260 天前
    wsl2 和 vmware 两个可以一起用,不是只能选其中一个的。

    wsl2 和系统集成得比较好,打开终端就可以用,可以直接操作本地磁盘的文件,这个优点是虚拟机没法比的。
    vmware 就是隔离性比较高,能打快照,操作失误了能回滚,不怕折腾。
    512357301
        70
    512357301  
       260 天前 via Android
    我用的 boot2docker ,个人感觉,够用,唯一的缺点就是 docker 版本卡在了 19 ,因为它不更新了。。。
    rehoni
        71
    rehoni  
       260 天前 via Android
    @EricSTG 我这两年 win11 都没蓝屏哎
    rehoni
        72
    rehoni  
       260 天前 via Android
    @rehoni 应该说从没蓝屏
    WuSiYu
        73
    WuSiYu  
       260 天前
    wsl1 虽然更加“无缝”,但可惜被砍了,之后的 wslg 、cuda 等很多新特性都不支持了,所以还是 wsl2 吧,就是有时候得等几秒让它启动,在意的话可以改下 wsl2 的配置,禁止自动关闭 vm
    wsl2 的好处就是真的能当一个 linux vm 来用,systemd 什么的都是有的
    VMware 现在可以跟 Hyper-V 共存,如果觉得 Hyper-V 自带的界面太难用可以装一个
    ZZ74
        74
    ZZ74  
       260 天前 via Android
    @Yuhooo
    @jfcherng
    我也是,而且 virtualbox 也一样 虚拟机里安装 win11 也会卡死 我去试一试
    4linuxfun
        75
    4linuxfun  
       260 天前
    WSL2+Docker 是很好的组合,但是,升级了下 win11 系统,就起不来了。。。。从此就放弃 WSL2
    rojer12
        76
    rojer12  
       259 天前   ❤️ 1
    @Rache1 #6 大小核的调度问题?试试看把 vmware 锁到大核上面
    lingeo
        77
    lingeo  
       259 天前
    如果想在虚拟机上面使用显卡,那么 wsl2 应该是唯一选择。
    lingeo
        78
    lingeo  
       259 天前
    如果你是专业卡另说。
    Rache1
        79
    Rache1  
       259 天前
    @rojer12 #76 经你这么一说,专门去搜了一下,发现好像设置成管理员启动就可以,然后试了一下,果然 Win10 的虚拟机比之前快了好多,但是发现 Win7 的虚拟机器启动后,Vmware 里面的系统会蓝屏,然后重启,进不去系统,看了一下,有说法是 Hyper-V 会影响,结果一看,我的果然是开着的,然后把 Hyper-V 关了,重启了以后, 果然又回到了以前的丝滑状态啊,舒服了。


    就是还有个小问题,Vmware 默认会在任务栏显示一个托盘图标,我之前没打开管理员启动的时候,双击图标就可以打开 Vmware ,现在不行了。



    https://www.chiphell.com/forum.php?mod=redirect&goto=findpost&ptid=2547801&pid=53447138
    orm
        80
    orm  
       259 天前
    像我如果是平时只用一个些 Linux 命令行工具,MSYS2 就很好,没有像 WSL2 的网络问题
    jin7
        81
    jin7  
       259 天前
    别用 wsl wsl2 一堆问题 用虚拟机安装 linux 再安装 docker
    Felldeadbird
        82
    Felldeadbird  
       259 天前
    新系统 wsl2
    老系统用 vm 就一直用 vm
    WashFreshFresh
        83
    WashFreshFresh  
       259 天前
    @nicocho 升级 wslg 把 idea 也丢到里面去 我目前是这样解决的 不然 win 下的 idea 索引 wsl2 里的项目 大概率卡死
    jackytang520
        84
    jackytang520  
       259 天前
    vagrant+virtualbox
    yiqiao
        85
    yiqiao  
       259 天前
    virtualbox 不是免费吗,再装个 vagrant 就完事了。
    yudoo
        86
    yudoo  
       259 天前
    @EricSTG #41 tabby 还可以了内存占用大概 300 兆, iterm 用过吗
    RYAN10041
        87
    RYAN10041  
       259 天前
    资源占用、速度上 wsl2 好
    想要挂载硬盘、扩展性好选 VMware
    至于 wsl1 是什么垃圾
    Nasei
        88
    Nasei  
       259 天前
    @jqtmviyu orbstack 确实比 docker desktop 强很多,跟 wsl2 类似了
    tongqe
        89
    tongqe  
       259 天前
    wsl2
    mscsky
        90
    mscsky  
       259 天前
    wsl 开发级别 VMware 生产级别
    Ipsum
        91
    Ipsum  
       259 天前
    wsl2 不大规模编译还行。一但遇到比如 op 等系统编辑,io 会让你怀疑人生。
    lazydao
        92
    lazydao  
       259 天前
    主力 WSL2 。
    备用 VMware 虚拟机用来做一些骚操作。
    bigtear
        93
    bigtear  
       259 天前   ❤️ 2
    想正经干活 VMware ,免费版 Player 够用
    想玩玩随便 wsl1 2 ,在我看来区别不大,只能当个 unix 工具箱用而已

    我们用的都是 VMware ,Virtualbox ,你用 Hyper-V ,活该你折腾,你用 Hyper-V 根本没有机会参加这个聚会
    bigtear
        94
    bigtear  
       259 天前
    @bigtear 玩梗勿怪哈哈,Hyper-V 和 Type2 的 VMware workstation 和 Vitrualbox 比不好用,跟 Type1 的 pve exsi 比方便一点

    建议还是搞个小 NAS 或者小服务器跑你的服务,或者直接切换到 Linux 、Mac 吧
    mrpzx001
        95
    mrpzx001  
       259 天前
    wsl2 一样可以玩 mac ,试试 docker-osx
    EricSTG
        96
    EricSTG  
    OP
       259 天前
    @lazydao 什么操作算是骚操作呢
    EricSTG
        97
    EricSTG  
    OP
       259 天前
    @mrpzx001 发现新世界
    kikyou12138
        98
    kikyou12138  
       259 天前
    @s1461a 没玩过这么高端的,我就在里面起写数据库 mq 之类的通过 127.0.0.1 连
    lujiaosama
        99
    lujiaosama  
       259 天前
    WSL2 集成度更高更无缝, 但是千万别想着在 WSL2 里写代码, IO 卡爆了
    asm
        100
    asm  
       259 天前
    WSL2 适合测试环境,vmware 适合搞一些事情,就看自己用不用快照了。
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2793 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:31 · PVG 08:31 · LAX 16:31 · JFK 19:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.