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

是 WSL2 还是 Cygwin?

  •  
  •   qwerthhusn 2020-05-25 16:37:16 +08:00 8164 次点击
    这是一个创建于 2041 天前的主题,其中的信息可能已经有所发展或是发生改变。

    众所周知,2004 要来了

    作为一名 Java 后台码畜

    我目前在用 Cygwin,常用的 Linux 命令都有,而且还可以安装一些额外的软件,像 mysql-client 这些。 用了 Cygwin 的 chere,任意目录右击都有菜单弹出一个 shell 窗口并自动 cd 到当前目录 ( Cygwin 的 Git 在 VSCode 不能用,只能用 Git for Windows )

    Docker 就用的 D4W,不重度使用,都是跑一些第三方软件什么的,暂未遇到什么 BUG (很早之前出现经常端口被占用的问题也没出现过了)

    这样的话,还有必要用 WSL2 么?不知道撸个 Linux 系统做什么用,Cygwin 都是直接操作本地文件系统,WSL 里面还能操作本地文件,或者本地 CD 盘作为一个虚拟的盘被挂载到 Linux 下 但是看很多人很期待所谓 WSL2,难道还有啥非常好用的我不知道的功能?

    31 条回复    2020-05-26 21:23:48 +08:00
    guyeu
        1
    guyeu  
       2020-05-25 16:45:31 +08:00
    Cygwin 是一个兼容环境。。wsl 是一个完整的操作系统。。
    Cygwin 能做到的 wsl 都能做到,反之不一定。。

    个人比较期待的是微软计划提供的 wsl 的图形化支持。。
    skt041959
        2
    skt041959  
       2020-05-25 17:23:15 +08:00
    WSL2 直接运行发行版编译的二进制包,直接以 Linux 的系统调用工作,很多时候可以避免 Cygwin 上环境相关的未知的 bug 。很多的软件未必对 Cygwin 有官方的支持
    iamwho
        3
    iamwho  
       2020-05-25 17:29:09 +08:00 via iPhone
    vagrant
    ghostwwg
        4
    ghostwwg  
       2020-05-25 18:19:23 +08:00
    @guyeu 期待微软发布 Linux 发行版~
    wipbssl
        5
    wipbssl  
       2020-05-25 18:40:33 +08:00
    Latin
        6
    Latin  
       2020-05-25 18:49:13 +08:00
    都用
    hantsy
        7
    hantsy  
       2020-05-25 18:57:13 +08:00
    wsl 是 Hyper V 一个虚拟机, 挂到 Windows 下,WSL2 已经集成到 Explorer 中可以直接打开。
    slanternsw
        8
    slanternsw  
       2020-05-25 20:42:03 +08:00
    既然已经在用 Docker for Windows 了,那反正也在跑虚拟机了,只不过换一个而已
    yujiff
        9
    yujiff  
       2020-05-25 20:48:47 +08:00   1
    Windows 是最好用的 Linux 桌面发行版!
    ScotGu
        10
    ScotGu  
       2020-05-25 21:06:37 +08:00
    如果我在 wsl 下 rm rf / 会不会危机到我硬盘的其他数据? 因为我看模式是把 CDE 盘挂载在 /mnt 里了。
    dandycheung
        11
    dandycheung  
       2020-05-25 21:27:45 +08:00 via iPhone
    @guyeu WSL1 也可以支持 GUI,只是中文输入上比较不方便。
    zjsxwc
        12
    zjsxwc  
       2020-05-25 22:05:32 +08:00 via Android
    我一直用 linux 和 macos 的,10 年没有 windows,
    搭楼问个问题,

    wsl 现在可以`ln -s`创建和使用 linux 软链接了吗,我 linux 下 git 提交的相对路径软链接能在 wsl 里使用吗?
    h503mc
        13
    h503mc  
       2020-05-25 22:10:50 +08:00
    @ScotGu 会的
    Jirajine
        14
    Jirajine  
       2020-05-25 22:17:46 +08:00 via Android
    msys2 配合 cmder 也不错。
    dorothyREN
        15
    dorothyREN  
       2020-05-25 22:21:49 +08:00
    @h503mc #13 windows 不允许删除系统文件,那么在 wsl 里面能 rm -rf /* 吗?
    nightwitch
        16
    nightwitch  
       2020-05-25 22:48:32 +08:00
    wsl2 还没正式发布吧? 我记得要用的话要加入 insider 计划. 如果现在还是的话那和 Cygwin 没什么可比性, 不可能拿自己的生产机器来搞 insider 这种不稳定版本的
    wangkun025
        17
    wangkun025  
       2020-05-25 22:53:39 +08:00
    昨天试过了。
    WSL 确实还行。用 Microsoft Terminal,感觉很舒服♀
    dvaknheo
        18
    dvaknheo  
       2020-05-25 23:15:34 +08:00
    wsl1 的 io 性能,可以把一些框架拉下马。
    mitu9527
        19
    mitu9527  
       2020-05-25 23:19:01 +08:00
    vagrant
    Liberal0
        20
    Liberal0  
       2020-05-25 23:38:57 +08:00 via Android
    @nightwitch 已发布正式版
    slanternsw
        21
    slanternsw  
       2020-05-26 00:45:23 +08:00
    @nightwitch 过几天正式推送 2004 了就有了
    jinliming2
        22
    jinliming2  
       2020-05-26 00:52:14 +08:00 via iPhone
    @zjsxwc WSL 下软连接是没有问题的,但仅限于受 WSL 管理的目录,挂载的 windows 的 CDEFG 盘是不行的。
    Windows 下的 CDEFG 盘在 NTFS 下是可以创建 Windows 版的软链接的,用的是 cmd 的 mklink 命令。貌似新版的 git for windows 客户端已经支持了(没验证)。
    ScotGu
        23
    ScotGu  
       2020-05-26 01:00:54 +08:00
    @h503mc #13 幸亏我把 wsl 删了,要不保不齐脑子一热……

    @dorothyREN #15 /mnt 挂载的磁盘可不都是系统文件呀。
    leewi9coder
        24
    leewi9coder  
       2020-05-26 01:46:04 +08:00 via iPhone
    vagrant 不过貌似 wsl 要支持直接 GPU 了
    guyeu
        25
    guyeu  
       2020-05-26 10:19:39 +08:00
    @dandycheung #11 不是说 xserver 这样的支持。。今年年底可能就能看到 Windows 上出现 XTerm 的窗口。。
    dandycheung
        26
    dandycheung  
       2020-05-26 12:49:16 +08:00 via iPhone
    @guyeu 没太懂你的意思,我偶尔启动 WSL 的 Ubuntu 里的 gHex 或者 gedit,算吗?
    wizardoz
        27
    wizardoz  
       2020-05-26 13:09:37 +08:00
    @guyeu cygwin 可以编译应用程序运行在没有 cygwin 的系统上
    guyeu
        28
    guyeu  
       2020-05-26 14:21:27 +08:00
    @dandycheung #26
    现在想在 Windows 上运行 Linux GUI 程序,只能 x11 转发。。以后就可以像原生应用一样了。
    dandycheung
        29
    dandycheung  
       2020-05-26 19:57:35 +08:00 via iPhone
    @guyeu 是。不过在宿主 Windows 里起一个 X server,好歹是同一台物理机,用起来也还成。
    guyeu
        30
    guyeu  
       2020-05-26 21:22:47 +08:00
    @wizardoz #27 如果真的是这样的话。。那 Linux 软件分发 Windows 版本就没有门槛了
    guyeu
        31
    guyeu  
       2020-05-26 21:23:48 +08:00
    @dandycheung #29 轻度使用还行。。一方面是么得办法利用 GPU 性能,另一方面是用起来太麻烦了。。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     951 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 29ms UTC 19:07 PVG 03:07 LAX 11:07 JFK 14:07
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86