这几天玩了一下WSL 2,还挺有意思。这样就可以在windows下玩linux了,还要什么mac啊。

  • 需要安装"windows subsystem for linux"和"virtual machine platform"这两个windows feature。如果后一个不安装,就只能使用WSL 1,无法开启WSL 2。
  • 可以通过microsoft store安装ubuntu lts,然后从windows terminal就能进ubuntu玩了。
  • 如果不能通过上述方法安装ubuntu,也可以通过docker export生成的镜像文件,再导入wsl (也就是说wsl 2内部通过类似于docker的方式实现)。
    • docker export ${dockerContainerId} ./centos.tar -- 在linux机器下运行docker或者podman
    • wsl --import CentOS ${local_deploy_path} .\centos.tar -- local_deploy_path可以是本地任意路径 (eg: E:\wslDistroStorage\CentOS)
    • wsl -l -v -- 显示已有的虚拟机
    • 如果上面命令显示版本是1,需要安装wsl_update_x64.msi,并运行wsl --set-version CentOS 2升级到wsl2。
    • wsl --set-default-version 2 -- 默认使用wsl2。
    • wsl -d centos -- 启动centos,有意思的是可以在这个虚拟机上再玩docker。
    • wsl -t centos -- 关闭centos。
    • 通过这个办法,也可以跑archlinux。
    • 进centos后,运行vscode,会发现vscode可以直接编辑centos里的项目,这都可以不用vim了。
  • 我的机子还是1909的版本,撞了wsl 2以后,vmware起不来了,估计新版本的windows 10没有这个问题。

https://www.youtube.com/watch?v=IL7Jd9rjgrM
这个视频中他介绍了在WSL下玩图形界面,安装xfce/gdm,然后rdp到本地的ubuntu虚拟机上。