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

wsl2 + Windows Terminal 完全可以取代 macOS

  •  1
     
  •   ericgui · 2020-05-11 06:54:12 +08:00 · 23198 次点击
    这是一个创建于 1690 天前的主题,其中的信息可能已经有所发展或是发生改变。

    公司发了台 macBook 用了大半年 其实还是非常好用的

    但我有一台 32G 内存,i7 的 dell 不用可惜了 最近尝试着注册了 windows insider,升级了 wsl2 并且安装了 windows terminal (颜值非常高)

    效果非常 OK 的

    wsl2 支持 docker 非常非常 OK

    148 条回复    2020-06-30 10:45:39 +08:00
    1  2  
    alphatoad
        101
    alphatoad  
       2020-05-11 11:49:10 +08:00 via iPhone
    我拿 macOS 写 os 课作业,交上去发现在 Linux 上编译不了……
    惨啊,posix 实现和一些头文件不一样
    最后 4.0 变成 3.3
    alphatoad
        102
    alphatoad  
       2020-05-11 11:50:16 +08:00 via iPhone
    Windows terminal 我试用了一下,没有右键菜单、command 和 control 不分还是有些蛋疼
    不过总体上已经不错了,配合 vscode 确实可以做开发
    zpfhbyx
        103
    zpfhbyx  
       2020-05-11 11:53:54 +08:00
    @alphatoad docker 啊- -,
    alphatoad
        104
    alphatoad  
       2020-05-11 11:55:46 +08:00 via iPhone
    @zpfhbyx 我知道,当时对 Unix portability 过分自信了……
    Mithril
        105
    Mithril  
       2020-05-11 12:00:19 +08:00
    @alphatoad 不要相信任何 portability 的鬼话。
    项目大了还是要自己负责的。起码多平台编译了试试。
    yty2012g
        106
    yty2012g  
       2020-05-11 12:04:53 +08:00
    @Trim21 #46 据说是 5 月 26 日。
    Outshine
        107
    Outshine  
       2020-05-11 12:36:51 +08:00
    可是你用 mac os 又不是只用 docker
    systemcall
        108
    systemcall  
       2020-05-11 12:40:04 +08:00 via Android
    windows terminal 的半透明有点奇怪,是焦点的情况下才半透明,ctrl+shift+鼠标滚轮可以调节透明度
    一缩放窗口,docker 的输出就乱了
    还有些小问题,比如有时候 powershell 会变成黑色的界面
    sdd11
        109
    sdd11  
       2020-05-11 12:46:14 +08:00 via iPhone
    @geeglo 我 13 年底的 Macbook pro 用到现在,你可以说说你遇到了什么奇奇怪怪的问题
    charlie21
        110
    charlie21  
       2020-05-11 12:46:15 +08:00   ❤️ 1
    mac:折腾一番,真好用
    win :没有右键菜单,真难用
    charlie21
        111
    charlie21  
       2020-05-11 12:50:27 +08:00   ❤️ 1
    把 "Open Windows Terminal here" 加入右键菜单 ( 保存为 wt.reg 双击执行导入注册表 )

    ```
    Windows Registry Editor Version 5.00
    ;
    ; wt.reg
    ; https://windowsloop.com/add-open-windows-terminal-here-option-to-right-click-menu/
    ; https://raw.githubusercontent.com/microsoft/terminal/master/res/terminal.ico
    ;

    [HKEY_CLASSES_ROOT\Directory\Background\shell\wt]
    @="Open Windows Terminal here"
    "Icon"="%USERPROFILE%\\\\AppData\\Local\\WTerminal\\terminal.ico"

    [HKEY_CLASSES_ROOT\Directory\Background\shell\wt\command]
    @="C:\\Users\\sysadmin\\AppData\\Local\\Microsoft\\WindowsApps\\wt.exe -d %V"

    ; Ensure OS Entries are on the Extended Menu (Shift-Right Click)

    [HKEY_CLASSES_ROOT\Directory\Background\shell\wt]
    "Extended"=""
    ```
    BernieDu
        112
    BernieDu  
       2020-05-11 12:58:40 +08:00
    @murmur Mac 有 steam 啊。你在说什么。。我主玩的 wow 和 dota2 和炉石一直 都是 Mac 上玩。。Mac 也有高配啊。。iMac pro 、怎么就不能玩游戏了。。就算你说个 win 独占游戏。。Mac 本装 Windows 很简单吧。。反过来呢
    Maximumh
        113
    Maximumh  
       2020-05-11 12:58:41 +08:00 via iPad
    @alphatoad 就一个作业从 A 变 B+,你不如好好考虑是电脑问题,还是写的内容的问题
    alphatoad
        114
    alphatoad  
       2020-05-11 13:01:51 +08:00 via iPhone
    @Maximumh 占比 17%的作业,站着说话真不腰疼
    Yourshell
        115
    Yourshell  
       2020-05-11 13:01:54 +08:00
    docker desktop wsl2 backend 的端口映射在使用过程中经常遇到问题,也不知道该怎么解决。
    geekaven
        116
    geekaven  
       2020-05-11 13:04:49 +08:00
    战争开始,台式机 windows, 笔记本 mac, 还有一个备用笔记本折腾 linux,想用什么用什么
    pcbl
        117
    pcbl  
       2020-05-11 13:06:10 +08:00 via Android
    @charlie21 shift+右键 可以出现右键打开菜单
    geeglo
        118
    geeglo  
       2020-05-11 13:25:22 +08:00
    @sdd11

    首先,这个是大家遇到的问题,随便找两关键词搜索:site:v2ex.com/t mac 崩溃

    至于我自己,睡眠重启,kernel panic 也遇到不下十次了。


    单独的硬件方面,这几代的 T2 芯片问题,键盘问题,喇叭异响,屏幕涂层脱落只能靠小心,这些统统都是问题啊。
    jswh
        119
    jswh  
       2020-05-11 13:31:31 +08:00
    wsl2 的内存占用太大了,又切回 wsl1,等什么时候我的电脑 32G 内存了再用
    sdd11
        120
    sdd11  
       2020-05-11 13:52:39 +08:00 via iPhone
    @geeglo 屏幕涂层脱落我遇到过,apple 换了之后就没有了,T2 芯片,键盘,喇叭这些我也都听说过,hopefully 新版磨具稳定之后会慢慢消除了
    sdd11
        121
    sdd11  
       2020-05-11 13:54:21 +08:00 via iPhone
    @geeglo 我还遇到过电池鼓包,但这两个问题都比较容易就解决了,蓝牙连不上,驱动不工作等等软硬件配合上的问题我目前还没有遇到。MacOS 我也都是一路升级到最新版。可能我运气比较好吧
    sdd11
        122
    sdd11  
       2020-05-11 13:56:40 +08:00 via iPhone
    @geeglo kernel Panic 可能遇到过一次?我不太记得了,说实话,按照我的体验来说,绝大多数时候 Mac 的使用体验都是非常好的(颜值加上设计)只有极少数的 bug 。我很满意
    Actrace
        123
    Actrace  
       2020-05-11 14:37:28 +08:00
    现在 openssh 已经是 win10 专业版的标配了,我是把连接服务器的指令写成 bat 文件,然后 onedrive 多设备同步,在 macos 上可以通过给 bat 指定 ssh 打开,然后达成全系统双击文件自动登录服务器的崇高理想。

    试了一下 Windows terminal,界面还是蛮不错的,但是发现一个问题,它无法作为某个后缀指定的打开方式。设置按应用设置默认打开方式也无法找到它。现阶段还是不够完善。
    djs
        124
    djs  
       2020-05-11 14:42:56 +08:00
    - -我被 wsl 的文件权限整死了,最后回到黑苹果上了,不懂 wsl2 有没有整好
    masquerader
        125
    masquerader  
       2020-05-11 14:56:47 +08:00
    @ericgui 你说的 Docker Desktop Edge 和 @kuaner 说的 WSL2 里的 Docker 是两回事。Docker Desktop Edge 的 Docker daemon 是运行在 Windows 上的,WSL2 里安装的 Docker 的 daemon 是运行在 WSL2 里的。

    @kuaner 我现在的办法是加到.bashrc/.zshrc 的 service docker start 来做的,方法很 low 但好像也没啥办法,WSL2 里没有 systemd 之类的东西。
    charlie21
        126
    charlie21  
       2020-05-11 15:03:16 +08:00
    @masquerader 如果 wsl 里没有一个人手动启动的后台常驻进程 / service,在关闭 shell 窗口之后的半分钟里,wsl 会自动关闭,为了节省电脑资源 。它就这样
    wulin
        127
    wulin  
       2020-05-11 15:04:27 +08:00
    wsl 好用,更新也比较快了,越来越好
    hakono
        128
    hakono  
       2020-05-11 15:05:26 +08:00
    @jswh wsl2 可以限制内存使用量的
    hakono
        129
    hakono  
       2020-05-11 15:14:37 +08:00
    wsl2 的问题其实还很大,有些问题直接影响使用

    wsl2 就是个轻量的 Hyper-V 虚拟机,但是作为一个虚拟机,wsl2 却根本没法将内部的文件通过 samba 共享给局域网(甚至共享给同一台宿主机上的另一台 Hyper-V 虚拟机都做不到)

    搞不懂微软为什么一定要给 wsl2 用默认那个 Hyper-V 虚拟交换机,而且还不支持修改,导致每次重启系统 wsl2 的 ip 包括网段都会是随机的。然后为了填上这个坑微软费了老大劲搞了个动态端口映射,把 wsl2 内的端口映射到宿主机上,导致问题多多(比如一个端口宿主和 wsl 同时占用你怎么办?)。原本简简单单支持下 wsl2 的静态 IP (可以指定自己创建的 Hyper-V 虚拟交换机)就轻松解决的事情,一定要费老大劲绕道解决,而且绕的道还不好用
    darksword21
        130
    darksword21  
       2020-05-11 15:22:28 +08:00
    mac 全局 emacs 快捷键
    ai277014717
        131
    ai277014717  
       2020-05-11 15:26:01 +08:00
    用基于 virtualbox 的 docker 无法持久化使用了 mmap 技术类的工具比如各种数据库。WSL1 好像就是基于 virtualbox 把。WSL2 不知道怎么样。我只知道 mac 版的 docker 对这点支持还不错。
    ClutchBear
        132
    ClutchBear  
       2020-05-11 15:27:29 +08:00
    @kneep jetbrains 全家桶能直接打开 wsl2 中的目录就完美了.
    一直期待这个.
    nozer
        133
    nozer  
       2020-05-11 15:29:48 +08:00
    以前用 mac,是因为 windows 下面的终端和 shell 是真特么难用。

    现在有了 wsl2 和 windows terminal,很舒服。

    mac 已经吃灰很久了,估计只有什么时候做 app 才会想起那玩意儿。
    ik2h
        134
    ik2h  
       2020-05-11 15:58:04 +08:00
    我尝试用 IDEA 搭配 WSL,本来想直接用 WSL 自带的 Git,结果 IDEA 就是非得 Windows 也装上才能完整支持,官方说后继会加强对 WSL 的支持,但也不知道要多久了.一个普通的 ls 命令,总能列出各种奇怪的 Windows 产物.另外直接支持的发行版也太少了,我得各种魔改才能安装上适合自己的 Gentoo
    whileFalse
        135
    whileFalse  
       2020-05-11 17:07:44 +08:00
    @hakono #129 wsl2 的设计目的是系统的一部分,而不是一台虚拟机
    所以它上面的进程和本机进程共享端口是设计目的啊
    tionsin
        136
    tionsin  
       2020-05-11 17:29:59 +08:00
    @charlie21
    **powershell**: shift + 右键 即可打开当前路径的 powershell
    **cmd**: 文件夹路径输入 cmd 回车 即可打开当前路径的 cmd
    cwbsw
        137
    cwbsw  
       2020-05-11 17:40:12 +08:00
    MAC 首先是相当优秀的个人电脑,然后才是能够用于生产力的工具。
    不干活的时候我更愿意使用 MAC 而不是 Win 或 Linux,反倒是很多时候出于工作目的不得不使用 Win 和 Linux 。
    horizonl
        138
    horizonl  
       2020-05-11 18:48:26 +08:00
    。。。你这个,得看个人需求的吧,
    xiaoxuxu
        139
    xiaoxuxu  
       2020-05-11 19:53:54 +08:00
    我最近也从 Mac 换回 win 本了,AMD 4800u 真香! wsl2 真香!
    tengyoubiao
        140
    tengyoubiao  
       2020-05-11 21:09:41 +08:00 via Android
    @masquerader win10 1909 就没有冲突问题了好像(我开了 hyper-v 也能用 vmware player )用 eNSP 组网需要的 virtualbox 也没有出大问题
    TypeError
        141
    TypeError  
       2020-05-11 21:18:46 +08:00 via Android
    wsl2 网络比较恶心,不如 wsl1,我还是退回去了,
    MacOS 也没好多少,每天遇到一堆 bug
    jamesxu
        142
    jamesxu  
       2020-05-11 21:47:50 +08:00 via iPhone
    一直 insider,用了一年多了,很好用,除了字体渲染,虽然 mactype 可以改进一下
    mgrddsj
        143
    mgrddsj  
       2020-05-11 21:49:02 +08:00 via Android
    @PbCopy111 #65 奇怪了,我的 Windows 本长期都蓝牙鼠标+蓝牙键盘+蓝牙耳机,没有问题啊。无线 /蓝牙网卡还是垃圾的 Intel 3165 (1x1, 5GHz 最高跑到 433 Mbps). 莫非你的本子用的是更垃圾的 Realtek 网卡?
    PbCopy111
        144
    PbCopy111  
       2020-05-12 10:22:15 +08:00
    @mgrddsj 我的是 dell 的 XPS 啊,killer 的网卡。。鼠标是罗技的 MX MASTER3,耳机是苹果的,iphone 。。。。
    PbCopy111
        145
    PbCopy111  
       2020-05-12 10:23:00 +08:00
    @azkaban 罗技的 MX MASTER3 和苹果的耳机,还有苹果的手机。
    wpf375516041851
        146
    wpf375516041851  
       2020-05-12 11:47:24 +08:00
    rz sz 一直搞不定
    mgrddsj
        147
    mgrddsj  
       2020-05-12 13:11:56 +08:00 via Android
    @PbCopy111 #144 那的确不应该只能连一个设备…
    liu35118665
        148
    liu35118665  
       2020-06-30 10:45:39 +08:00
    @hakono 我去改了 hyper-v 的虚拟交换机,可以实现静态 ip,但是,重启后不能用了。搞不懂 wsl2 的设计理念,既然做了虚拟机,那别把虚拟机的体验给丢了啊,真是坑,我现在 docker 也用了 wsl2,结果被我折腾的 docker 的服务也没法往外发布,不知道如何解决了
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3443 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 04:58 · PVG 12:58 · LAX 20:58 · JFK 23:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.