Windows11 下把 WSL2 Ubuntu 26.04 装到 D 盘教程
目录
一、背景与目标
在 Windows 上使用 WSL2 跑 Linux 开发环境,默认会装在 C 盘。C 盘空间紧张时,把整个发行版放到 D 盘是更合理的做法。其他盘同理
本文目标:
- 安装 Ubuntu 26.04 LTS,WSL 版本为 2
- 系统虚拟磁盘落在 D 盘,不占 C 盘空间
- 创建用户,同步主机代理
- 验证 WSL 内可正常使用 NVIDIA GPU
最终环境:
| 项目 | 值 |
|---|---|
| Windows | 10.0.26200.8457 |
| WSL | 3.0.1.0 |
| 内核 | 6.18.40.1-1 |
| 发行版 | Ubuntu 26.04 LTS (Resolute Raccoon) |
| 默认版本 | 2 |
| 安装位置 | D:\WSL\Ubuntu-26.04\ext4.vhdx |
| GPU | NVIDIA GeForce RTX 5070 Ti |
二、整体流程
- 启用 WSL2 组件
- 手动下载 Ubuntu 26.04 的 WSL 镜像
- 用
wsl --import导入到 D 盘 - 创建普通用户、修复默认用户配置
- 配置
.wslconfig解决代理提示 - 设为默认发行版并验证 GPU
三、分步操作
1. 启用 WSL2 组件
以管理员身份打开 PowerShell:
wsl --install --no-distribution
该命令会安装 WSL 组件并启用 VirtualMachinePlatform,但不安装任何发行版。
执行后按提示重启电脑,否则组件更改不会生效。
确认版本(在powershell中执行):
wsl --version
输出示例:
WSL 版本: 3.0.1.0
内核版本: 6.18.40.1-1
WSLg 版本: 1.0.79
MSRDC 版本: 1.2.7214
Direct3D 版本: 1.611.1-81528511
DXCore 版本: 10.0.26100.1-240331-1435.ge-release
Windows 版本: 10.0.26200.8457
2. 不直接用 wsl --install -d Ubuntu
由于 wsl --install -d Ubuntu 命令会安装在C盘中且直接安装时可能报错:
Wsl/InstallDistro/WININET_E_INVALID_SERVER_RESPONSE
这是从服务器下载发行版时网络中断导致的,与系统本身无关。因此此教程中的方法为手动下载镜像再本地导入,绕开在线下载环节。 ps:也可以直接执行 wsl --install -d Ubuntu 安装到 C 盘后再迁移到 D 盘,本文为绕开在线下载环节,采用手动导入镜像的方式。
3. 下载 Ubuntu 26.04 WSL 镜像
从 Ubuntu 官方或镜像站下载 WSL 专用镜像,镜像网站:
https://releases.ubuntu.com/26.04.1/
向下滑找到 ubuntu-26.04-wsl-amd64.wsl 并下载
大小约 396MB。在D盘新建一个WSL目录用来存放镜像与系统,镜像下载后放到 D:\WSL\ 目录下。
4. 导入到 D 盘
在 PowerShell 中执行:
wsl --import Ubuntu-26.04 D:\WSL\Ubuntu-26.04 D:\WSL\ubuntu-26.04-wsl-amd64.wsl --version 2
参数说明:
Ubuntu-26.04:发行版名称D:\WSL\Ubuntu-26.04:虚拟磁盘存放目录- 第三个参数:下载的镜像文件路径
--version 2:指定 WSL2
执行成功会提示“操作成功完成”。
此时 D 盘Ubuntu-26.04目录下会生成 ext4.vhdx:
在powershell中查看一下
dir D:\WSL\Ubuntu-26.04
ext4.vhdx 就是 Ubuntu 系统的虚拟磁盘,明虚拟磁盘已落在 D 盘。
5. 首次进入并创建普通用户
wsl -d Ubuntu-26.04
首次进入默认是 root 用户。创建普通用户:
adduser 你的用户名
usermod -aG sudo 你的用户名
输入密码时屏幕不会显示字符,这是正常现象,其他选项直接回车设置成默认值。 这里面,我将 '你的用户名' 替换为 'Hao' 为的我的用户名 确认用户已创建:
ls /home
输出应为自己创建的用户名:
Hao
6. 修复用户报错
如果 /etc/wsl.conf 中 default= 写入的用户名与实际创建的用户不一致,重启 WSL 会报错
getpwnam(...) failed
修改方法:
新建 powershell 以 root 身份进入wsl:
wsl -d Ubuntu-26.04 -u root
写入与adduser一致的用户名:
cat > /etc/wsl.conf <<'EOF'
[user]
default=Hao
EOF
在新建一个 powersehll 重启wsl 生效:
wsl --shutdown
wsl -d Ubuntu-26.04
7. 配置 .wslconfig 解决代理提示(没有代理可忽略该步骤)
如果 Windows 上开着代理,进入 WSL 会提示:
wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。
在 C:\Users\你的Windows用户名\ 下新建 .wslconfig:
用记事本方式打开该文件,复制以下内容并保存退出
[wsl2]
networkingMode=mirrored
[experimental]
autoProxy=true
然后重启:
wsl --shutdown
wsl -d Ubuntu-26.04
8. 设为默认发行版(为了方便,可忽略)
在 powershell 中运行
wsl --set-default Ubuntu-26.04
之后直接输入 wsl 即可进入该系统。
查看状态:
wsl --status
PS C:\Users\Administrator> wsl --status
默认分发: Ubuntu-26.04
默认版本: 2
当前计算机配置不支持 WSL1。
若要使用 WSL1,请启用“Windows Subsystem for Linux”可选组件。
查看列表:
wsl -l -v
PS C:\Users\Administrator> wsl -l -v
NAME STATE VERSION
* Ubuntu-26.04 Running 2
9. 验证 Ubuntu 版本
在 WSL 中执行:
cat /etc/os-release
Hao@Hao:~$ cat /etc/os-release
PRETTY_NAME="Ubuntu 26.04 LTS"
NAME="Ubuntu"
VERSION_ID="26.04"
VERSION="26.04 (Resolute Raccoon)"
VERSION_CODENAME=resolute
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=resolute
LOGO=ubuntu-logo
10. 验证 GPU
nvidia-smi
Thu Oct 8 17:34:44 2026
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 615.78.02 KMD Version: 617.14 CUDA UMD Version: 13.4 |
+-----------------------------------------+------------------------+----------------------+
| 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:02:00.0 Off | N/A |
| 0% 31C P8 16W / 300W | 13MiB / 16303MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+-----------------------------------------------------------------------------------------+
四、最终环境总结
| 项目 | 结果 |
|---|---|
| 发行版 | Ubuntu 26.04 LTS (Resolute Raccoon) |
| WSL 版本 | 3.0.1.0,发行版 VERSION 2 |
| 安装位置 | D:\WSL\Ubuntu-26.04\ext4.vhdx |
| C 盘占用 | 不占 |
| 默认发行版 | Ubuntu-26.04 |
| 默认用户 | Hao |
| 网络模式 | mirrored,代理自动同步 |
| GPU | RTX 5070 Ti 可正常识别 |
五、小结
wsl --install -d Ubuntu遇到网络报错时,改为手动下载镜像 +wsl --import更稳- wsl --import 方式可一步到位把系统装到 D 盘,不需要先装 C 盘再迁移
- 默认用户报错只需修正
/etc/wsl.conf里的用户名 - 代理提示靠
.wslconfig+ mirrored 模式解决,注意文件名别被存成.txt - WSL2 可直接使用 NVIDIA GPU,无需额外配置