当前位置:首页>Linux>WSL2-Kali-Linux-完整指南

WSL2-Kali-Linux-完整指南

  • 2026-10-11 07:54:54
WSL2-Kali-Linux-完整指南

Windows WSL2

安装 Kali Linux 完整指南

包含:安装部署 · 清华换源 · D盘迁移 · 内存优化 · 权限修复 · 代理联动

适用环境:Windows 11 | 32GB 内存 | 用户名 LeoEzekiel | 清华源 | D盘

文档版本:v1.0 | 2025年

文档概述

本文档是一份针对 Windows 11 用户的 WSL2 + Kali Linux 完整部署指南,涵盖从零安装到生产环境优化的全部步骤。所有命令均已针对用户 LeoEzekiel 的环境进行预设定,可直接复制执行。

适用环境

项目

配置

操作系统

Windows 11

内存大小

32GB

Kali 用户名

LeoEzekiel

软件源

清华大学 TUNA 镜像站

WSL 存储盘

D 盘

WSL 内存上限

16GB

代理软件

暂未配置(备用)

整体流程

安装 WSL → 安装 Kali Linux → 初始化系统 → 换清华源 → 迁移到 D 盘 → 限制内存 → 修复权限 → 完成!

✅ 提示:每一步完成后都执行 wsl --shutdown 重启 WSL 再进行下一步,确保配置生效。

第一章:安装 WSL 和 Kali Linux

1.1 启用 WSL

右键开始菜单 → 终端(管理员)或搜索 PowerShell → 右键以管理员身份运行。执行以下命令:

wsl --install -d kali-linux

此命令会自动启用 WSL 功能并安装 Kali Linux 发行版。如果系统提示需要重启,请立即重启电脑。

✅ 提示:wsl --install 默认安装 Ubuntu,加上 -d kali-linux 才能指定安装 Kali。如果命令报错,可先执行 wsl --list --online 查看可用发行版。

1.2 重启电脑

安装完成后必须重启计算机,重启后 Kali Linux 会自动弹出初始化窗口。如果没有自动弹出,可以在开始菜单搜索 Kali Linux 打开。

1.3 初始化 Kali Linux

首次启动会等待解压(约 1-3 分钟),然后按提示操作:

输入新用户名:LeoEzekiel

输入新密码:********(输入两次,密码不会显示)

⚠️ 注意:用户名建议使用小写字母,密码请记住,后续 sudo 操作会用到。

1.4 运行初始配置脚本

创建用户后,执行 Kali 的初始化脚本:

/usr/bin/kali-setup

该脚本会自动配置时区、locale、SSH 密钥等基础设置。

1.5 全量升级系统

初始化完成后,执行全量系统升级:

sudo apt update && sudo apt full-upgrade -y

这个过程可能需要几分钟到十几分钟,取决于网络速度和需要更新的包数量。

1.6 验证安装

kali --version

whoami

执行 whoami 应输出 LeoEzekiel,确认用户创建成功。

第二章:换源为清华源

2.1 为什么要换源?

Kali Linux 默认使用官方源,服务器在国外,下载速度极慢甚至经常超时失败。换成清华大学 TUNA 镜像站后,下载速度可达到满速。

2.2 备份原有源

在修改之前,先备份原有的源配置文件,以便出问题时可以恢复:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2.3 替换为清华源

执行以下命令,将源列表文件替换为清华源:

sudo tee /etc/apt/sources.list > /dev/null << 'EOF'

deb https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main non-free contrib non-free-firmware

# deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main non-free contrib non-free-firmware

EOF

✅ 提示:发行版代号必须是 kali-rolling(滚动更新版),不是 kali。组件包含 main、non-free、contrib、non-free-firmware 四部分。

2.4 安装签名密钥并更新

换源后需要安装清华源的 GPG 签名密钥,然后更新软件列表:

sudo apt install kali-archive-keyring -y

sudo apt clean && sudo apt update

如果没有报错(尤其是没有 NO_PUBKEY 错误),说明换源成功。

⚠️ 注意:如果出现 NO_PUBKEY 错误,请确保已执行 sudo apt install kali-archive-keyring -y,然后再执行 sudo apt update。

第三章:WSL 发行版迁移到 D 盘

3.1 为什么要迁移?

WSL 默认安装在 C 盘,用久了虚拟磁盘文件(.vhdx)会越来越大,直接把 C 盘占满。迁移到 D 盘可以释放 C 盘空间。

⚠️ 注意:以下命令全部在管理员 PowerShell 中执行!迁移前确保 Kali 中没有正在运行的重要程序。

3.2 查看已安装的发行版

在管理员 PowerShell 中执行:

wsl -l -v

记住发行版名称(通常是 Kali-Linux),下面的命令都用这个名称。如果显示的名称不同,请相应替换。

3.3 关闭所有 WSL

wsl --shutdown

3.4 创建 D 盘目标文件夹

New-Item -ItemType Directory -Path "D:\WSL" -Force

3.5 导出发行版备份

wsl --export Kali-Linux D:\WSL\Kali-Linux.tar

等待导出完成,文件可能有几个 GB,取决于你装了多少软件。

3.6 注销 C 盘原发行版

wsl --unregister Kali-Linux

⚠️ 注意:此操作会删除 C 盘的 WSL 数据!请确保 3.5 导出成功后再执行!操作不可逆!

3.7 导入到 D 盘

wsl --import Kali-Linux D:\WSL\Kali-Linux D:\WSL\Kali-Linux.tar --version 2

导入完成后,默认会以 root 用户登录,下一步需要修改默认用户。

3.8 设置默认用户为 LeoEzekiel

启动 Kali:

wsl -d Kali-Linux

在 Kali 终端中执行:

echo -e "[user]\ndefault=LeoEzekiel" | sudo tee /etc/wsl.conf

3.9 重启 WSL 使配置生效

回到 PowerShell:

wsl --shutdown

wsl -d Kali-Linux

验证用户:

whoami

应输出 LeoEzekiel。

3.10 清理备份文件

确认迁移成功后,删除备份文件释放空间:

Remove-Item D:\WSL\Kali-Linux.tar -Force

第四章:限制 WSL2 内存占用

4.1 问题说明

WSL2 最常见的问题是内存占用过高。Linux 的缓存机制会把内存占满,且不会主动释放给 Windows,导致 Windows 变卡或其他程序崩溃。解决方案是通过配置文件限制 WSL 的最大内存。

4.2 创建 .wslconfig 文件

在管理员 PowerShell 中执行以下命令,自动创建配置文件:

$wslConfig = @"

[wsl2]

# 最大内存限制(32G内存建议给16G)

memory=16GB

# 最大处理器核心数

processors=8

# 交换分区大小

swap=8GB

# 自动释放闲置内存给Windows

pageReporting=true

# 本地端口转发

localhostForwarding=true

"@

$wslConfig | Out-File -FilePath "$env:USERPROFILE\.wslconfig" -Encoding UTF8 -Force

Write-Host "✅ .wslconfig 已创建: $env:USERPROFILE\.wslconfig" -ForegroundColor Green

✅ 提示:配置文件位置:C:\Users\<你的Windows用户名>\.wslconfig,注意前面有个点,没有后缀名。

4.3 配置参数说明

参数

设置值

说明

memory

16GB

WSL 最大可用内存,超出后会使用 swap

processors

8

分配给 WSL 的 CPU 核心数

swap

8GB

交换分区大小,内存不足时使用

pageReporting

true

自动将闲置内存释放给 Windows

localhostForwarding

true

允许通过 localhost 访问 WSL 服务

4.4 重启 WSL 生效

wsl --shutdown

4.5 验证内存限制

在 Kali 中执行:

free -h

总内存应显示约 16GB。

4.6 手动释放内存缓存(备用)

如果觉得内存还是很高,可以手动清除缓存:

sudo echo 3 > /proc/sys/vm/drop_caches

第五章:修复文件权限混乱

5.1 问题说明

WSL 访问 Windows 文件(/mnt/c、/mnt/d)时,默认权限是 777,所有人都可读写执行。这会导致某些程序(如 Git、SSH)权限检测异常,报错或拒绝运行。

5.2 解决方案

通过配置 /etc/wsl.conf 中的挂载参数,让 Windows 文件的权限变为正常的 644(文件)和 755(文件夹)。

5.3 备份并写入配置

在 Kali Linux 中执行:

sudo cp /etc/wsl.conf /etc/wsl.conf.bak

写入新配置:

sudo tee /etc/wsl.conf > /dev/null << 'EOF'

[automount]

enabled = true

options = "metadata,umask=022,fmask=133"

mountFsTab = true

[user]

default = LeoEzekiel

EOF

✅ 提示:umask=022 让文件夹权限为 755,fmask=133 让文件权限为 644。metadata 参数支持 Linux 权限位。

5.4 重启 WSL 生效

回到 PowerShell:

wsl --shutdown

wsl -d Kali-Linux

5.5 验证权限

在 Kali 中执行:

ls -la /mnt/c/Users/

文件权限应为 -rw-r--r--(644),文件夹应为 drwxr-xr-x(755),不再是全 777。

第六章:代理联动(备用)

6.1 使用场景

如果你以后需要在 Kali 中访问外网(如使用 git clone、pip install 等),而 Windows 上已经开了代理软件,可以配置 WSL 直接走 Windows 的代理。

6.2 配置方法

在 Kali 的 ~/.bashrc 末尾添加以下内容(端口号请根据你的代理软件修改):

# WSL 代理联动

export WINDOWS_HOST=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}')

export PROXY_PORT=7890

export http_proxy=http://$WINDOWS_HOST:$PROXY_PORT

export https_proxy=http://$WINDOWS_HOST:$PROXY_PORT

export all_proxy=socks5://$WINDOWS_HOST:$PROXY_PORT

保存后执行:

source ~/.bashrc

6.3 常见代理端口

代理软件

默认端口

PROXY_PORT 值

Clash / Clash Verge

7890

7890

V2rayN

10809

10809

Shadowsocks

1080

1080

✅ 提示:代理软件需要开启“允许局域网连接”才能让 WSL 正常使用。

附录:常用命令速查

PowerShell 命令

命令

说明

wsl -l -v

查看已安装发行版及 WSL 版本

wsl --shutdown

关闭所有 WSL 实例

wsl -d Kali-Linux

启动 Kali Linux

wsl --set-default Kali-Linux

设 Kali 为默认发行版

wsl --set-version Kali-Linux 2

确保使用 WSL 2

wsl --export Kali-Linux D:\backup.tar

导出发行版备份

wsl --import Kali D:\WSL D:\backup.tar

导入发行版

Kali Linux 常用命令

命令

说明

sudo apt update

更新软件源列表

sudo apt upgrade -y

升级已安装软件

sudo apt install 软件名 -y

安装软件

sudo apt autoremove -y

清理无用依赖

sudo apt clean

清理下载缓存

free -h

查看内存使用

df -h

查看磁盘使用

cat /etc/os-release

查看系统信息

whoami

查看当前用户

uname -a

查看内核版本

文件位置快速参考

文件

路径

说明

.wslconfig

C:\Users\<用户>\.wslconfig

WSL 全局配置(内存、CPU)

wsl.conf

/etc/wsl.conf

Kali 内配置(挂载、用户)

sources.list

/etc/apt/sources.list

APT 软件源配置

.bashrc

~/.bashrc

用户环境变量和别名

WSL 虚拟磁盘

D:\WSL\Kali-Linux\ext4.vhdx

WSL 存储文件

最新文章

随机文章