本文记录在 Windows 11 上安装 WSL2 以及调试相关问题的过程与经验。

开启 WSL 功能

打开 Windows 控制面板,依次点击程序 => 启用或关闭 Windows 功能


开启 Hyper-VVirtual Machine Platform适用于 Linux 的 Windows 子系统

然后重启计算机。

安装 WSL

以管理员身份运行 Windows 终端,然后执行 wsl --update

PS C:\Users\wgxls> wsl --update
正在下载: 适用于 Linux 的 Windows 子系统 2.6.3
正在安装: 适用于 Linux 的 Windows 子系统 2.6.3
已安装 适用于 Linux 的 Windows 子系统 2.6.3。
操作成功完成。
正在检查更新。
已安装最新版本的适用于 Linux 的 Windows 子系统。

使用 wsl --version 查看 wsl 版本。

PS C:\Users\wgxls> wsl --version
WSL 版本: 2.6.3.0
内核版本: 6.6.87.2-1
WSLg 版本: 1.0.71
MSRDC 版本: 1.2.6353
Direct3D 版本: 1.611.1-81528511
DXCore 版本: 10.0.26100.1-240331-1435.ge-release
Windows: 10.0.26100.1742

使用 wsl --install 安装 Linux(Ubuntu) 子系统。

输入两次密码,就完成了 Ubuntu 系统的初始化。

PS C:\Users\wgxls> wsl --install
正在下载: Ubuntu
正在安装: Ubuntu
已成功安装分发。可以通过 “wsl.exe -d Ubuntu” 启动它
正在启动 Ubuntu...
wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。
Provisioning the new WSL instance Ubuntu
This might take a while...
Create a default Unix user account: wgxls
New password:
Retype new password:
passwd: password updated successfully
To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

我的电脑中默认安装的是 Ubuntu 24.04.3 LTS

wgxls@DESKTOP-DMRH21F:/mnt/c/Users/wgxls$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 24.04.3 LTS
Release:        24.04
Codename:       noble

WSL 配置

WSL 存储位置迁移

WSL 的默认存储位置在 C 盘,随着 WSL 的使用,其磁盘会不断增大,占用大量 C 盘空间。可以通过以下步骤将 WSL 存储位置迁移到其他盘符。

以管理员身份运行 Windows 终端,执行以下命令查看已经安装的 WSL 发行版:

PS C:\Users\wgxls> wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Running         2

我这里目前只安装了一个 Ubuntu 发行版,并且正在运行。

首先关闭正在运行的 WSL 发行版:

PS C:\Users\wgxls> wsl --shutdown
PS C:\Users\wgxls> wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Stopped         2

以 vhd 格式导出 WSL 发行版,我这里指定导出到 D 盘的 D:\WSL\Ubuntu.vhdx 文件中:

PS C:\Users\wgxls> wsl --export Ubuntu D:\WSL\Ubuntu.vhdx --vhd
正在导出,这可能需要几分钟时间。 (1408 MB)

操作成功完成。

删除当前的 WSL 发行版:

PS C:\Users\wgxls> wsl --unregister Ubuntu
正在注销。
操作成功完成。

PS C:\Users\wgxls> wsl -l -v
适用于 Linux 的 Windows 子系统没有已安装的分发。
可通过安装包含以下说明的分发来解决此问题:

使用“wsl.exe --list --online' ”列出可用的分发
和 “wsl.exe --install <Distro>” 进行安装。

导入之前导出的 WSL 发行版到新的位置:

PS C:\Users\wgxls> wsl --import Ubuntu D:\WSL\Ubuntu\ D:\WSL\Ubuntu.vhdx --vhd
操作成功完成。
PS C:\Users\wgxls> wsl -l -v
  NAME      STATE           VERSION
* Ubuntu    Stopped         2

可以看到 WSL 发行版已经成功导入到新的位置,这里使用 ls 命令查看 D:\WSL\Ubuntu\ 目录:

PS C:\Users\wgxls> ls D:\WSL\Ubuntu\


    目录: D:\WSL\Ubuntu


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----          2026/1/5     20:59     1801453568 ext4.vhdx

刚刚的 Ubuntu.vhdx 文件就可以删除了,释放空间。

可以使用 wsl --set-default Ubuntu 命令将新导入的 Ubuntu 发行版设置为默认发行版:

PS C:\Users\wgxls> wsl --set-default Ubuntu
操作成功完成。

WSL Settings

可以通过在 Windows 用户目录下创建 .wslconfig 文件来配置 WSL 的一些参数,例如内存限制、处理器数量等。

也可以通过 WSL Settings GUI 工具进行配置。

  1. 内存和 CPU 限制

我习惯将 WSL 的内存和处理器数量设置为和宿主机相同,以充分利用系统资源。毕竟 WSL 才是主要的工作环境。

使用如下命令获取以 MB 为单位的总内存大小:

PS C:\Users\wgxls> Get-CimInstance Win32_ComputerSystem | Select-Object @{Name="TotalPhysicalMemoryMB";Expression={"{0:N0}" -f ($_.TotalPhysicalMemory/1MB)}}

TotalPhysicalMemoryMB
---------------------
32,419

将获取到的内存大小填写到 WSL Settings 中:

  1. 文件系统

在文件系统选项中,可以设置 WSL 虚拟硬盘的最大大小,默认的设置是 1TB,根据需要可以调整,我这里保持默认。

  1. 网络

在网络选项中,我习惯使用镜像网络模式,并开启主机地址回环,这样可以更方便地在 Windows 和 WSL 之间进行网络通信。

  1. 可选功能 和 开发人员选项 我都保持了默认设置。

最终在 .wslconfig 文件中会生成如下内容:

[wsl2]
memory=33993785344
networkingMode=Mirrored
[experimental]
hostAddressLoopback=true

WSLg 设置

WSLg 是 WSL 的图形化支持组件,可以让我们在 WSL 中运行 Linux GUI 应用程序。

这里参考官方文档进行配置:

https://learn.microsoft.com/zh-cn/windows/wsl/tutorials/gui-apps

若要运行 Linux GUI 应用,应首先安装与以下系统匹配的驱动程序。 这样,便可以使用虚拟 GPU (vGPU),以便从硬件加速的 OpenGL 渲染中获益。

英特尔 GPU 驱动程序
AMD GPU 驱动程序
NVIDIA GPU 驱动程序

  1. 更新 Ubuntu 系统

在 Linux 系统中执行:

sudo apt update && sudo apt upgrade -y
  1. 安装 gedit 文本编辑器
sudo apt install gedit -y

安装完成之后,在 Windows 的开始菜单中可以看到 Linux 系统下的应用程序,并且可以直接点击运行。

也可以在 Linux 系统中使用终端命令开启 GUI 程序。

  1. 安装 Google Chrome for Linux

将目录更改为临时文件夹:

cd /tmp

使用 wget 下载它:

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt install -f ./google-chrome-stable_current_amd64.deb

此选项 -f 用于修复安装过程中可能出现的损坏依赖项。 该 ./ 命令指定.deb文件所在的当前目录。 如果.deb文件位于其他目录中,则需要在命令中指定该文件的路径。

更多应用我就不再继续装了,毕竟 WSLg 并不是主要的使用场景。

Ubuntu 系统配置

Ubuntu 设置中文字体

让 WSL 直接使用 Windows 字体,WSL 会自动挂在 Windows 的字体目录 /mnt/c/Windows/Fonts,我们只需要指定字体即可。

sudo gedit /etc/fonts/local.conf

在打开的文件中添加如下内容:

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
    <dir>/mnt/c/Windows/Fonts</dir>
</fontconfig>

保存后,刷新字体缓存。

sudo fc-cache -fv

使用 fc-list 命令查看字体列表,确认 Windows 字体已经被识别。

$ fc-list :lang=zh | grep "Microsoft YaHei"
/mnt/c/Windows/Fonts/msyhbd.ttc: Microsoft YaHei,微软雅黑:style=Bold,Negreta,tučné,fed,Fett,Έντονα,Negrita,Lihavoitu,Gras,Félkövér,Grassetto,Vet,Halvfet,Pogrubiony,Negrito,Полужирный,Fet,Kalın,Krepko,Lodia
/mnt/c/Windows/Fonts/msyh.ttc: Microsoft YaHei UI:style=Regular,Normal,obyčejné,Standard,Κανονικά,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
/mnt/c/Windows/Fonts/msyh.ttc: Microsoft YaHei,微软雅黑:style=Regular,Normal,obyčejné,Standard,Κανονικά,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta
/mnt/c/Windows/Fonts/msyhbd.ttc: Microsoft YaHei UI:style=Bold,Negreta,tučné,fed,Fett,Έντονα,Negrita,Lihavoitu,Gras,Félkövér,Grassetto,Vet,Halvfet,Pogrubiony,Negrito,Полужирный,Fet,Kalın,Krepko,Lodia
/mnt/c/Windows/Fonts/msyhl.ttc: Microsoft YaHei UI,Microsoft YaHei UI Light:style=Light,Regular
/mnt/c/Windows/Fonts/msyhl.ttc: Microsoft YaHei,微软雅黑,Microsoft YaHei Light,微软雅黑 Light:style=Light,Regular

$ fc-list :lang=zh | grep "SimHei"
/mnt/c/Windows/Fonts/simhei.ttf: SimHei,黑体:style=Regular,Normal,obyčejné,Standard,Κανονικά,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,Arrunta

安装 1Panel 面板

https://1panel.cn/

sudo bash -c "$(curl -sSL https://resource.fit2cloud.com/1panel/package/v2/quick_start.sh)"

安裝成功提示如下:

[1Panel 2026-01-05 22:35:44 install Log]: 1Panel 服务已成功启动,正在继续执行后续配置,请稍候...
[1Panel 2026-01-05 22:35:48 install Log]:
[1Panel 2026-01-05 22:35:48 install Log]: =================感谢您的耐心等待,安装已完成==================
[1Panel 2026-01-05 22:35:48 install Log]:
[1Panel 2026-01-05 22:35:48 install Log]: 请使用您的浏览器访问面板:
[1Panel 2026-01-05 22:35:48 install Log]: 外部地址:  http://60.21.105.84:9999/0000
[1Panel 2026-01-05 22:35:48 install Log]: 内部地址:  http://192.168.0.110:9999/0000
[1Panel 2026-01-05 22:35:48 install Log]: 面板用户:  wgxls
[1Panel 2026-01-05 22:35:48 install Log]: 面板密码:  Ww0121050272.
[1Panel 2026-01-05 22:35:48 install Log]:
[1Panel 2026-01-05 22:35:48 install Log]: 官方网站: https://1panel.cn
[1Panel 2026-01-05 22:35:48 install Log]: 项目文档: https://1panel.cn/docs
[1Panel 2026-01-05 22:35:48 install Log]: 代码仓库: https://github.com/1Panel-dev/1Panel
[1Panel 2026-01-05 22:35:48 install Log]: 前往 1Panel 官方论坛获取帮助: https://bbs.fit2cloud.com/c/1p/7
[1Panel 2026-01-05 22:35:48 install Log]:
[1Panel 2026-01-05 22:35:48 install Log]: 如果您使用的是云服务器,请在安全组中打开端口 9999
[1Panel 2026-01-05 22:35:48 install Log]:
[1Panel 2026-01-05 22:35:48 install Log]: 为了您的服务器安全,离开此屏幕后您将无法再次看到您的密码,请记住您的密码。
[1Panel 2026-01-05 22:35:48 install Log]:
[1Panel 2026-01-05 22:35:48 install Log]: ================================================================

这里我设置了端口 9999 进行访问。

安装完成后,使用 Windows 浏览器访问 http://localhost:9999/0000 或者 http://127.0.0.1:9999/0000 能够成功访问,表示我们在 WSL Settings 中配置的镜像网络模式和主机地址回环是正确的。

安装 miniconda

https://www.anaconda.com/docs/getting-started/miniconda/install

sudo mkdir /opt/miniconda3
cd /tmp
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
sudo bash Miniconda3-latest-Linux-x86_64.sh -b -u -p /opt/miniconda3

激活 conda 环境。

source /opt/miniconda3/bin/activate

初始化 conda 环境对于所有 shell 环境。

conda init --all

执行完以上命令之后,重新计入终端会默认进入到 conda 的 base 环境。

如果想要取消 conda 的自动激活,可以执行以下命令:

conda config --set auto_activate false

开启 SSH 服务

安装 OpenSSH 服务器:

sudo apt install openssh-server -y

开启 SSH 服务:

sudo systemctl start ssh

设置开机自启动:

sudo systemctl enable ssh

查看 SSH 服务状态:

sudo systemctl status ssh

输出内容显示 Active: active (running) 表示 SSH 服务已经成功启动。

wgxls@DESKTOP-DMRH21F:~$ sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/usr/lib/systemd/system/ssh.service; enabled; preset: enabled)
     Active: active (running) since Tue 2026-01-06 20:48:22 CST; 48s ago
TriggeredBy: ● ssh.socket
       Docs: man:sshd(8)
             man:sshd_config(5)
    Process: 2314 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
   Main PID: 2316 (sshd)
      Tasks: 1 (limit: 38088)
     Memory: 1.3M (peak: 1.6M)
        CPU: 11ms
     CGroup: /system.slice/ssh.service
             └─2316 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"

Jan 06 20:48:22 DESKTOP-DMRH21F systemd[1]: Starting ssh.service - OpenBSD Secure Shell server...
Jan 06 20:48:22 DESKTOP-DMRH21F sshd[2316]: Server listening on 0.0.0.0 port 22.
Jan 06 20:48:22 DESKTOP-DMRH21F sshd[2316]: Server listening on :: port 22.
Jan 06 20:48:22 DESKTOP-DMRH21F systemd[1]: Started ssh.service - OpenBSD Secure Shell server.

如果你无法从外部设备通过 SSH 连接到 WSL,可能需要配置 Windows 防火墙允许端口 22 的入站连接。

打开 Wondows 安全中心,依次点击防火墙和网络保护 => 高级设置

点击 入站规则 => 新建规则…,选择端口,点击下一步

选择TCP,并指定本地端口为22,点击下一步

我这里选择所有本地端口,表示允许所有端口通过防火墙。

选择允许连接,点击下一步

选择专用公用,点击下一步

为规则命名,例如 IN_TCP_ALL,点击完成

可以通过重复的步骤为 UDP 协议创建入站规则或者出站规则。

SSH 允许 root 用户登录

我主要在局域网内使用 SSH 登录 WSL,为了方便,我通过 1Panel 面板设置了允许 root 用户通过 SSH 登录。

为 root 用户设置密码:

sudo passwd root
wgxls@DESKTOP-DMRH21F:~$ sudo passwd root
[sudo] password for wgxls: <-- 输入当前用户密码
New password:              <-- 输入 root 用户新密码
Retype new password:       <-- 再次输入 root 用户新密码
passwd: password updated successfully

允许普通用户免输 sudo 密码

编辑 sudoers 文件:

sudo visudo

在文件末尾添加如下内容:

wgxls ALL=(ALL) NOPASSWD: ALL

保存并退出。现在,用户 wgxls 在使用 sudo 命令时将不再需要输入密码。

修改 SSH 会话 PATH 环境变量

在 WSL 中,默认情况下,通过 SSH 登录时,PATH 环境变量可能与直接在 WSL 终端中登录时不同。这可能导致某些命令无法找到。

比如,在 WSL 终端中可以执行 nvidia-smi 命令:

wgxls@DESKTOP-DMRH21F:~$ nvidia-smi
Tue Jan  6 22:06:31 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 590.48.01              Driver Version: 591.59         CUDA Version: 13.1     |
+-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 5070 Ti     On  |   00000000:01:00.0  On |                  N/A |
| 30%   39C    P0             31W /  300W |    1867MiB /  16303MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+
wgxls@DESKTOP-DMRH21F:~$ echo $PATH
/opt/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib:/mnt/c/Windows/system32:/mnt/c/Windows:/mnt/c/Windows/System32/Wbem:/mnt/c/Windows/System32/WindowsPowerShell/v1.0/:/mnt/c/Windows/System32/OpenSSH/:/mnt/c/Program Files (x86)/NVIDIA Corporation/PhysX/Common:/mnt/c/Users/wgxls/AppData/Local/Microsoft/WindowsApps:/mnt/d/Microsoft VS Code/bin:/snap/bin

但是通过 SSH 登录时,执行 nvidia-smi 命令会提示找不到命令:

wgxls@DESKTOP-DMRH21F:~$ echo $PATH
/opt/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

wgxls@DESKTOP-DMRH21F:~$ nvidia-smi
Command 'nvidia-smi' not found, but can be installed with:
sudo apt install nvidia-utils-470         # version 470.256.02-0ubuntu0.24.04.1, or
sudo apt install nvidia-utils-470-server  # version 470.256.02-0ubuntu0.24.04.1
sudo apt install nvidia-utils-535         # version 535.274.02-0ubuntu0.24.04.2
sudo apt install nvidia-utils-535-server  # version 535.274.02-0ubuntu0.24.04.2
sudo apt install nvidia-utils-570         # version 570.195.03-0ubuntu0.24.04.1
sudo apt install nvidia-utils-525         # version 525.147.05-0ubuntu1
sudo apt install nvidia-utils-525-server  # version 525.147.05-0ubuntu1
sudo apt install nvidia-utils-565-server  # version 565.57.01-0ubuntu0.24.04.3
sudo apt install nvidia-utils-570-server  # version 570.195.03-0ubuntu0.24.04.3
sudo apt install nvidia-utils-580         # version 580.95.05-0ubuntu0.24.04.3
sudo apt install nvidia-utils-580-server  # version 580.95.05-0ubuntu0.24.04.3
sudo apt install nvidia-utils-550-server  # version 550.163.01-0ubuntu0.24.04.1

wgxls@DESKTOP-DMRH21F:~$ /usr/lib/wsl/lib/nvidia-smi 
Tue Jan  6 22:09:43 2026       
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 590.48.01              Driver Version: 591.59         CUDA Version: 13.1     |
+-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 5070 Ti     On  |   00000000:01:00.0  On |                  N/A |
|  0%   42C    P0             29W /  300W |    1787MiB /  16303MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+

可以看到,通过 SSH 登录时,PATH 环境变量比 WSL 终端中少了很多路径,并提示找不到 nvidia-smi 命令。

而实际上 nvidia-smi 命令位于 /usr/lib/wsl/lib/ 目录下。

为了解决这个问题,我们可以配置文件 /etc/environment,将缺失的路径添加进去。

这个修改会影响所有通过 SSH 登录的用户。

sudo vim /etc/environment

这里我们不过多添加其他路径,把所有 /mnt 开头的路径都删除掉,只保留 /usr/lib/wsl/lib 路径。

修改前:

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"

修改后:

PATH="/opt/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib:/snap/bin"

重新 SSH 登录, nvidia-smi 命令就可以正常使用了。

修改 systemd 环境变量

现在 systemd 启动的服务(例如 1Panel 面板服务)也无法识别 /usr/lib/wsl/lib 路径下的命令。

为了让 systemd 服务也能识别该路径下的命令,我们需要修改 systemd 的环境变量配置文件。

sudo vim /etc/systemd/system.conf

在文件中找到 #DefaultEnvironment= 行,去掉注释并添加我们需要的路径。

修改前:

#DefaultEnvironment=

修改后:

DefaultEnvironment=PATH="/opt/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib:/snap/bin"

保存并退出。

重新启动 systemd:

sudo systemctl daemon-reexec

可以使用 systemctl show-environment 命令查看 systemd 的环境变量,确认修改已经生效。

wgxls@DESKTOP-DMRH21F:~$ systemctl show-environment
LANG=C.UTF-8
PATH=/opt/miniconda3/condabin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib:/snap/bin

重新启动 1Panel 服务:

sudo 1pctl restart

可以看到 1Panel 服务已经成功启动,并且可以正常使用 nvidia-smi 命令了。

WSL 挂在 ext4 磁盘

Windows 系统是无法直接访问 ext4 文件系统的,如果磁盘格式已经是 ext4,可以通过 WSL 来访问。

因为我的机械硬盘之前用在了 Linux 系统中,格式化为了 ext4 文件系统,现在想在 WSL 中挂载使用。

此时我需要参考的是官方文档中关于挂载已分区磁盘的内容:

https://learn.microsoft.com/zh-cn/windows/wsl/wsl2-mount-disk#mounting-a-partitioned-disk

首先以管理员身份运行 Windows 终端,使用 Get-CimInstance -Query "SELECT * from Win32_DiskDrive" 列出所有磁盘。

我这里有一个 4TB 的机械硬盘,ID 是 \\.\PHYSICALDRIVE0

PS C:\Users\wgxls> Get-CimInstance -Query "SELECT * from Win32_DiskDrive"

DeviceID           Caption              Partitions Size          Model
--------           -------              ---------- ----          -----
\\.\PHYSICALDRIVE0 WDC WD43PURZ-74BWPY0 1          4000784417280 WDC WD43PURZ-74BWPY0
\\.\PHYSICALDRIVE1 Fanxiang S790 2TB    3          2000396321280 Fanxiang S790 2TB

执行 wsl.exe --mount <Disk> --bare 命令挂载该磁盘:

wsl --mount \\.\PHYSICALDRIVE0 --bare

然后进入 WSL 系统,使用 lsblk 命令查看挂载的磁盘:

可以看到我这里的 4TB 硬盘已经成功挂载为 sdd 磁盘,并且有一个分区 sdd1

wgxls@DESKTOP-DMRH21F:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sda      8:0    0 388.6M  1 disk
sdb      8:16   0   186M  1 disk
sdc      8:32   0     8G  0 disk [SWAP]
sdd      8:48   0   3.6T  0 disk
└─sdd1   8:49   0   3.6T  0 part
sde      8:64   0     1T  0 disk /var/lib/docker
                                 /mnt/wslg/distro
                                 /