IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Windows 交互WSL2

    瀚海星空发表于 2021-05-20 12:28:36
    love 0

    概述

    WSL是Windows Subsystem for Linux的简称。 windows 中直接使用linux? 硬盘如何共享?程序如何共享?

    本文在windows的WSL2中安装好ubuntu20后,基本交互和使用的介绍。

    windows 访问 Ubuntu

    文件访问

    访问:Ubuntu root

    \\wsl$\Ubuntu
    

    个人目录:

    \\wsl$\Ubuntu\home\<yourname>
    

    在windows terminal 设置中配置缺省进入目录

    "startingDirectory": "//wsl$/Ubuntu/home/<yourname>/"
    

    可以映射网络驱动器

    \\wsl$\Ubuntu
    

    从windows运行linux 命令

    wsl <linux-command>
    

    如

    wsl ls -la
    

    Ubuntu访问Windows

    文件访问

    /mnt/c/Users/<yourname>
    

    如果要访问C:\projects\code\

    cd ~
    ln -s /mnt/c/projects/code/
    

    linux执行windows命令

    带上exe后缀。如从windows打开当前文件夹

    explorer.exe .
    

    编辑bashrc

    notepad.exe ~/.bashrc
    

    用vscode打开目录:

    code ~/projects/mywebsite
    

    wsl 安装文件

    修改ubuntu镜像地址:

    # 先备份/etc/apt/sources.list
    cp /etc/apt/sources.list /etc/apt/sources.list.bak
    
    # 替换镜像
    sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list
    # 更新源
    apt-get update
    # 安装中文支持
    apt-get install -y language-pack-zh-hans
    # 设置默认语言
    update-locale LANG=zh_CN.UTF-8
    
    PS C:\Users\zhh> wsl.exe -l -v
      NAME                   STATE           VERSION
    * Ubuntu                 Running         1
      docker-desktop         Running         2
      docker-desktop-data    Running         2
    PS C:\Users\zhh> wsl.exe --set-version Ubuntu 2
    
    

    安装git

    sudo apt-get update
    sudo apt-get install git-all
    

    安装 nodejs

    设置nodejs镜像

    
    npm config set registry https://registry.npm.taobao.org
    或者vim .npmrc
    registry=https://registry.npm.taobao.org
    

    安装nvm

    到https://github.com/nvm-sh/nvm 查找最新版本。

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.1/install.sh | bash
    
    nvm --version
    0.37.1
    
    # 查询node版本
    nvm ls
    
    # 用nvm安装node
    nvm install node
    Now using node v15.3.0 (npm v7.0.14)
    
    # 安装npx,npx也可以对包进行管理
    npm install npx
    
    

    或者单独用操作系统安装node环境,但这种方式不方便切换不同的node版本

    sudo apt-get install build-essential
    curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
    sudo apt-get install -y nodejs
    

    安装docker

    docker 类似虚拟机。所以不需要在windows和wsl各安装一份。 Docker Desktop for Windows 完全支持WSL2.

    在windows安装Docker Desktop,并使docker和docker compose在win和wsl都可用。

    可以在安装docker时配置支持WSL2,也可以在安装完毕后,在右下角图标中点settings,在general页配置选中Use the WSL 2 based engine . 在Resources页的WSL Integration 项,选中ubuntu。

    vscode 集成 wsl2

    VS Code WSL2 Integration 在vs code中执行 Ctrl + Shift + P,输入Terminal: Select Default Shell,然后WSL Bash。

    vscode和其他程序一样,可以访问linux,通过\wsl$\。 如下插件可以简化linux和docker使用:

    • 安装 VS Code 远程 WSL 扩展: 此扩展使你能够在 VS Code 中打开在 WSL 上运行的 Linux 项目, (无需担心路径问题、二进制兼容性或) 的其他跨操作系统挑战。
    • 安装 VS code Remote-Containers 扩展 此扩展使你能够在容器中打开你的项目文件夹或存储库,利用 Visual Studio Code 的完整功能集来完成容器中的开发工作。
    • 安装 VS Code Docker 扩展。 此扩展添加了从 VS Code 内部生成、管理和部署容器化应用程序的功能。 (需要 Remote-Container 扩展,才能实际使用容器作为开发环境。 )

    除了在命令行直接远程操作,还可以用remote window和左侧的Remote Explorer 图标访问容器和远程系统。

    参考

    • https://www.sitepoint.com/wsl2/
    • https://zhuanlan.zhihu.com/p/258563812
    • 安装docker: https://docs.docker.com/docker-for-windows/install/
    • https://docs.docker.com/docker-for-windows/wsl/

    • wsl2 update linux kernel https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-kernel
    • 玩转 WSL 在 Win10 上打造 Linux 开发环境 https://zhuanlan.zhihu.com/p/93457173
    • https://docs.microsoft.com/zh-cn/windows/wsl/tutorials/wsl-containers


沪ICP备19023445号-2号
友情链接