Windows安装wsl,并升级到wsl2

这篇博客详细介绍了如何在Windows上安装wsl,并升级到wsl2,包括自定义安装路径、使用LXRunOffline工具进行管理、设置默认用户、备份与恢复发行版,以及如何启用WSL2。此外,还讲解了如何配置pycharm以使用wsl的virtualenv。

Windows安装wsl,并升级到wsl2

前提是win宿主机已经启用虚拟机以及Linux子系统功能

Windows设置 --> 应用(卸载、默认应用、可选功能) --> 可选功能(滑到最下边)

–> 更多Windows功能 --> 勾选“适用于Linux的Windows子系统” --> 确定,后续按提示操作

安装方式:

  • 通过微软商店(默认装在C盘,且不可更改)
  • 下载安装包,自行安装(自定义安装路径)

1. 自定义安装

  • 在官网选择自己想要安装的版本,并下载安装包(.appx格式的文件),下载地址

    这里注意,下载完的包,如果通过命令Add-AppxPackage .\app_name.appx安装,其实和直接微软商店下载安装是等效的,也是默认装在C盘的

  • 将安装包放到自己设定(计划安装wsl)的目录中,后缀改为.zip类型,然后解压缩

  • 找到解压文件夹中的发行版.exe文件,双击会自动安装到当前目录

    这里有用LxRunOffline进行安装的,如果仅仅是使用wsl,完全通过Lx来进行管理,并无大碍。但是如果要使用pycharm等配置python解释器,通过LX安装的会没有.exe文件,导致pycharm无法加载到wsl的python启动命令。这里需要注意!

  • 等程序加载几秒,按提示输入用户、密码,会安装成功,自动进入对应发行版命令行,目录会成类如下所示结构(Ubuntu-20.04):

    .
    ├── AppxBlockMap.xml
    ├── AppxManifest.xml
    ├── AppxMetadata
    │   └── CodeIntegrity.cat
    ├── AppxSignature.p7x
    ├── Assets
    │   ├── LargeTile.scale-200.png
    │   ├── SmallTile.scale-200.png
    │   ├── SplashScreen.scale-200.png
    │   ├── Square150x150Logo.scale-200.png
    │   ├── Square44x44Logo.altform-unplated_targetsize-16.png
    │   ├── Square44x44Logo.altform-unplated_targetsize-256.png
    │   ├── Square44x44Logo.altform-unplated_targetsize-32.png
    │   ├── Square44x44Logo.altform-unplated_targetsize-48.png
    │   ├── Square44x44Logo.scale-200.png
    │   ├── Square44x44Logo.targetsize-16.png
    │   ├── Square44x44Logo.targetsize-24.png
    │   ├── Square44x44Logo.targetsize-24_altform-unplated.png
    │   ├── Square44x44Logo.targetsize-256.png
    │   ├── Square44x44Logo.targetsize-32.png
    │   ├── Square44x44Logo.targetsize-48.png
    │   ├── StoreLogo.scale-200.png
    │   └── Wide310x150Logo.scale-200.png
    ├── [Content_Types].xml
    ├── ext4.vhdx
    ├── fsserver
    ├── install.tar.gz
    ├── resources.pri
    ├── temp
    │   └── {8e2d940c-29cd-4399-946c-8307575a4fd3}
    │       └── 0000000000000001_tmpfs
    └── ubuntu2004.exe
    

2. LxRunOffline(github开源)管理wsl

a. 安装LX

  • 普通手动安装:下载解压 LxRunOffline ,并设置环境变量。
  • 使用 Chocolatey (win包管理工具)安装。
choco install lxrunoffline

b. LX命令选项、参数简述

powershell通过 LxRunOffline.exe --h查看所有命令及其用法

l , list - 列出所有已安装的发行版。

gd , get-default - 获取 bash.exe 使用的默认发行版。

sd , set-default - 设置 bash.exe 使用的默认发行版。

i , install - 安装新的发行版。

sd , set-default - 设置 bash.exe 使用的默认发行版。

ui , uninstall - 卸载发行版。

rg , register - 注册现有的安装目录。

ur , unregister - 取消注册发行版但不删除安装目录。

m , move - 将发行版移动到新目录。

d , duplicate - 在新目录中复制现有发行版。

e , export - 将发行版的文件系统导出到.tar.gz 文件,该文件可以通过 install 命令安装。

r , run - 在发行版中运行命令。

di , get-dir - 获取发行版的安装目录。

gv , get-version - 获取发行版的文件系统版本。

ge , get-env - 获取发行版的默认环境变量。

se , set-env - 设置发行版的默认环境变量。

ae , add-env - 添加到发行版的默认环境变量。

re , remove-env - 从发行版的默认环境变量中删除。

gu , get-uid - 获取发行版的默认用户的 UID。

su , set-uid - 设置发行版的默认用户的 UID。

gk , get-kernelcmd - 获取发行版的默认内核命令行。

sk , set-kernelcmd - 设置发行版的默认内核命令行。

gf , get-flags - 获取发行版的一些标志。有关详细信息,请参考这里

sf , set-flags - 设置发行版的一些标志。有关详细信息,请参考这里

s , shortcut - 创建启动发行版的快捷方式。

ec , export-config - 将发行版配置导出到 XML 文件。

ic , import-config - 从 XML 文件导入发行版的配置。

sm , summary - 获取发行版的一般信息。

c. LX高频操作

用LX安装WSL
  • 同样使用上边下载下来的.appx包,改为.zip并解压缩后,找到目录中的install.tar.gz文件,执行下述命令进行安装
    • lxrunoffline i -n <WSL名称> -d <安装路径> -f <安装包路径>.tar.gz
LX设置发行版wsl的默认用户

如果需要切换打开时的wsl的用户名字,可执行如下命令

  • 先进wsl命令行,查看对应用户的uid。新建的普通用户一般是1000,root用户是0

  • 推出wsl,在win的power shell执行lxrunoffline su -n <WSL名称> -v 0可将默认用户切换为root用户

LX操作转移已wsl的安装目录
  • 查看默认wsl 使用lxrunoffline gd或者执行wls -l
  • 输入命令对 WSL 的目录进行移动。
lxrunoffline m -n <WSL名称> -d <路径>
  • 最后查看路径,进行确认。
lxrunoffline di -n <WSL名称>
LX备份和恢复WSL

使用 LxRunOf­fline 可以方便的对 WSL 进行备份和恢复,同样可以实现转移的操作,而且还可以在转移到其它电脑上。

备份

输入需要备份的 WSL 名称和备份的目标路径。

lxrunoffline e -n <WSL名称> -f <压缩包路径>.tar.gz

类似但不等同于wsl --export <WSL名称> <压缩包路径>.tar

LxRunOf­fline 备份完会生成一个.xml后缀的同名配置文件,比如WSL.tar.gz.xml

恢复

输入以下命令可以恢复已备份的 WSL,和安装是相同的命令。

lxrunoffline i -n <WSL名称> -d <安装路径> -f <压缩包路径>.tar.gz

类似但不等同于wsl --import <WSL名称> <安装路径> <压缩包路径>.tar

LxRunOf­fline 会读取备份时生成的配置文件并写入配置,前提是同目录且同名。否则你需要加入-c参数指定配置文件。

LX设置默认WSL

powershell 中输入 wsl 直接调用默认的 WSL 。

lxrunoffline sd -n <WSL名称>

等同于wsl -s <WSL名称>

3. WSL启用WSL2

查看现在的wsl状态。

PS C:\> wsl -l -v
 NAME            STATE           VERSION
* ubuntu-18.04    Running         1

转换为wsl2

wsl --set-version ubuntu-18.04 2

pycharm配置wsl,并启用wsl的virtualenv

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值