Windows在更新到2004版本之后正式开启了WSL2的支持,这次是完整的运行在HyperV虚拟机中的Linux系统了,可以称之为真正的Linux了,难不成Windows即将成为最好的Linux发行版?

实际体验下来还是可以的,不过小问题不少,爱折腾的同学安排一手,对提高Windows平台下的开发体验还是有很大帮助的~

Kali on WSL2安装指南

升级系统

首先检查当前系统版本,按Win+R,输入winver,可以看到当前的系统版本:

如果不是2004版本的话,要把系统升级到2004版本,微软说是有推送,但时好时坏,检查不到更新的同学请自行下载官方的“易升”工具检查更新。

启用Linux子系统

在升级到2004版之后,可以开始安装系统了,如果没有启用Linux子系统的话,得先启用。

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

使用管理员权限打开PowerShell,输入以下命令,启用Linux子系统:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

之后需要重启。

启用虚拟化

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

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

重启系统

下载WSL2的Linux内核

下载地址:https://aka.ms/wsl2kernel

下载后安装。

设置子系统的默认版本为WSL2

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

wsl --set-default-version 2

安装Kali Linux

打开应用商店,搜索安装Kali Linux。

安装完成后选择“启动”,就会开始解压安装,然后输入用户名和密码就ok了。

升级原有系统到WSL2

如果原本就安装有WSL,可以直接升级到WSL2。

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

wsl --set-version kali-linux 2

安装Win-Kex工具包

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

在Kali命令行中输入命令安装:

sudo apt update && sudo apt install kali-win-kex

安装完成后就可以启动图像界面了,命令如下:

cd ~
kex

第一次启动会让你输入一个新密码,这个密码是作为kex的密码保存起来。

注意要先切换当前目录到home目录再启动kex,不然会获取不到key。

简单配置

安装Kali Linux工具包

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

配置Windows Terminal快捷方式

每次都用命令行打开太麻烦了,可以在Windows Terminal中配置快捷方式,下次就可以通过这个下拉菜单打开Kex的图形界面了。

打开Windows Terminal的配置文件,加入以下配置项:

{
        "guid": "{55ca431a-3a87-5fb3-83cd-11ececc031d2}",
        "hidden": false,
        "name": "Win-KeX",
        "commandline": "wsl kex wtstart",
},
{
         "guid": "{55ca431a-3a87-5fb3-83cd-11ececc031d2}",
         "hidden": false,
         "icon": "file:///c:/users/<windows user>/pictures/icons/kali-menu.png",
         "name": "Win-KeX",
         "commandline": "wsl kex wtstart",
    "startingDirectory" : "//wsl$/kali-linux/home/<kali user>"
},

之后点击“Win-Kex”菜单项就可以直接启动图形界面了。

❝ PS:进入全屏的图形界面之后,按F8可以打开context菜单。❞

解决无法联网问题

  1. Create a file: /etc/wsl.conf.
  2. Put the following lines in the file
[network]
generateResolvConf = false
  1. In a cmd window, run wsl --shutdown
  2. Restart WSL2
  3. Create a file: /etc/resolv.conf. If it exists, replace existing one with this new file.
  4. Put the following lines in the file
nameserver 8.8.8.8
Repeat step 3 and 4. You will see git working fine now.
  1. Repeat step 3 and 4. You will see git working fine now.

参考自:https://github.com/microsoft/WSL/issues/4285

解决kex无法启动问题

错误信息如下:

❝ unable to connect to socket: No connection could be made because the target machine actively refused it. (10061)
中文的提示就是什么远程主机积极拒绝❞

解决方法是在bash中运行kex stop,然后重新启动kex。

参考:https://unix.stackexchange.com/questions/605309/not-able-to-initialize-gui-for-kali-linux-in-wsl-2

参考资料

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐