Abstract
Keywords 专题  WSL  Windows Subsystem Linux  Linux  专题 
Citation Yao Qing-sheng.WSL2 专题.FUTURE & CIVILIZATION Natural/Social Philosophy & Infomation Sciences,20210401. https://yaoqs.github.io/20210401/wsl2-zhuan-ti/

安装 WSL2

开启虚拟机功能

❝ PS:由于 WSL2 是使用 HyperV 虚拟机的,所以开启之后会和 VMware 和 VirtualBox 冲突,可以通过升级 VMware 和 vbox 到支持 HyperV 的版本解决。❞

  1. 在控制面板 -> 程序和功能 -> Windows 功能窗口中勾选适用于 Linux 的 Windows 子系统 功能,点击确定,并按照提示重启电脑。

  2. 或以管理员身份在命令行键入

    1
    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
  3. 启用虚拟化

使用管理员权限打开 PowerShell,输入以下命令:

1
2
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

安装发行版

在 Windows 应用商店搜索 WSL ,选择自己想要的 Linux 发行版,点击下载安装即可。这里选择的是 Kali。

下载 WSL2 的 Linux 内核

下载地址:https://aka.ms/wsl2kernelWSL2-kernel

升级 WSL2

1
2
wsl -l # 查看WSL列表
wsl --set-version kali-linux 2

配置

安装完成后,在 Kali Linux 下,输入如下命令,安装工具集

1
sudo apt update && sudo apt upgrade

安装 Kali Linux 工具包

  1. 安装标准工具包
1
sudo apt install kali-linux-default
  1. 安装大工具包(大概 7 8G)
1
sudo apt install kali-linux-large

GUI (Win-KeX)

Win-Kex 工具包是 Kali 提供的在 Windows 上运行的图形化工具包,可以一键式傻瓜化在 WSL 中跑图形界面。

1
sudo apt install -y kali-win-kex

安装完毕后,可使用如下命令启动

1
2
3
4
5
6
7
# 启动
cd ~
kex
# 关闭
kex stop
# 窗口模式
kex --win -s

Win-KeX 还提供了无缝模式

1
2
# 无缝模式
kex --sl -s

将 Kali 和 Win-KeX 整合进 Terminal

Windows Terminal 的配置中添加

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
"list": [
{
"guid": "{46ca431a-3a87-5fb3-83cd-11ececc031d2}",
"hidden": false,
"name": "Kali",
"source": "Windows.Terminal.Wsl"
},
{
"guid": "{55ca431a-3a87-5fb3-83cd-11ececc031d2}",
"hidden": false,
"name": "KaTex",
// 窗口模式启动
"commandline": "wsl -d kali-linux kex --wtstart -s"
},
{
"guid": "{55ca431a-3a87-5fb3-83cd-11ececc031d2}",
"hidden": false,
"name": "Win-KeX",
"commandline": "wsl kex wtstart",
}

]
}

WSL2 优化压缩

随着使用时间的延长,WSL2 占用的硬盘空间会越来越多,这个时候就需要对其文件进行压缩。方法如下

1
2
3
4
5
6
7
8
wsl --shutdown
diskpart
# open window Diskpart
select vdisk file=
####
attach vdisk readonly
compact vdisk
detach vdisk

遇到的问题

References