zoukankan      html  css  js  c++  java
  • windows10的子系统linux(wsl)

    [] windows10的子系统linux(wsl)

    概述

    • 安装wsl
    • 开启、关闭wsl
    • 解决wsl内存超标问题
    • 安装node的方法
    • 备份、还原wsl

    1 安装方法

    适用于 Linux 的 Windows 子系统安装指南 (Windows 10) (micro)

    注意一点:步骤 5中

    官网给的 wsl --set-default-version 2,我系统中不生效,所以我采用指定分发版的方法:

    wsl --set-version 分发版名称 版本号
    # 例如,指定Ubuntu-18.04分发版的版本到2,然后等待
    wsl --set-version Ubuntu-18.04 2
    
    # 只有可以查看发行版目前的版本
    wsl -l --verbose
      NAME            STATE           VERSION
    * Ubuntu-18.04    Running         2
      Ubuntu          Stopped         1
    

    找出wsl安装路径的方法 () 没什么用

    2 关闭、重启wsl

    有两种方法:全关和一个一个关

    # 关闭虚拟服务(全部子系统都会被关闭),记得管理员权限
    net stop LxssManager
    net start LxssManager
    
    # 当然也可以一个一个终止其分发版
    wsl -t Ubuntu-18.04
    wsl -d Ubuntu-18.04
    

    3 将wsl2的Vmmem内存限制在512MB

    wsl2内存无缘无故会变得很大,所以可以限制一下最大内存,我选择限制在512MB

    image

    # 新建文件 %UserProfile%/.wslconfig
    # 注意这是在windows下,%UserProfile%是一个环境变量,表示当前登陆用户家目录
    [wsl2]
    memory=512MB
    swap=0
    localhostForwarding=true
    

    4 装node步骤

    4.1 装node方法

    首先装nvm再装node,不要 apt install nodejs,怀疑nodejs好像是一个过时的node

    apt install curl
    
    curl https://raw.githubusercontent.com/creationix/nvm/v0.30.2/install.sh | bash
    # 注意版本0.30.2,可查阅更换nvm的最新版
    

    这里可能有一个下载nvm的问题:

    curl: (35) OpenSSL SSL_connect: 连接被对方重设 in connection to raw.githubusercontent.com:443 (墙的问题,wsl中映射一下IP)

    4.2 nvm的一些操作
    nvm ls查看node版本
    
    nvm install node 安装最新版
    
    nvm install 14.16.1 安装node14.16.1版本
    
    # 临时指定版本,当前命令行生效
    nvm use 14.16.1
    
    # 指定默认版本,永久生效
    nvm alias default v4.3.0
    

    5 备份/删除/还原子系统

    # 查看wsl安装版本和名称
    wsl -l
    # 备份
    wsl --export Ubuntu-18.04 c:	empUbuntu-18.04-20210605.tar
    
    # 还原,还原之后terminal上自动会添加这个
    wsl --import Ubuntu_20210605 c:WSL c:	empUbuntu-18.04-20210605.tar
    
    # 删除
    wsl --unregister Ubuntu-18.04
    

    还原之后如何运行呢?是不是要还原到以前的目录呢?

    不需要还原到以前的目录,还原到任意位置都可以,还原后可以看到看到还原的Ubuntu_20210605,并且windows terminal自动会加入这个分发版

    PS C:Windowssystem32> wsl -l
    适用于 Linux 的 Windows 子系统分发版:
    Ubuntu (默认)
    Ubuntu-18.04
    Ubuntu_20210605
    
    # 设置默认分发版 s(set-default)
    wsl -s Ubuntu-18.04
    
    # 指定运行分发版 d(distribution)
    wsl -d Ubuntu-18.04
    
    # 查看运行的分发版
    wsl -l --running
    
    # 终止分发版 t(terminate)
    wsl -t Ubuntu-18.04
    
    其他命令详见 https://docs.microsoft.com/zh-cn/windows/wsl/reference
    

  • 相关阅读:
    Java的代码风格
    哪些你容易忽略的C语言基础知识
    Java基础学习笔记第二章
    Java代码性能优化总结
    Java并发编程(2):线程中断(含代码)
    C语言代码训练(一)
    数控G代码编程详解大全
    PLC编程算法
    博客转移到新地址
    一些吐槽
  • 原文地址:https://www.cnblogs.com/nahaohao/p/14854213.html
Copyright © 2011-2022 走看看