WSL2安装Ubuntu完整教程:自定义安装目录到D盘(--location一键搞定)

Windows 使用 WSL 安装 Ubuntu 详细教程

本文详细介绍如何在 Windows 系统上通过 WSL(适用于 Linux 的 Windows 子系统)安装 Ubuntu,包含完整的命令行操作步骤。
欢迎点赞收藏加关注,关注我的咸鱼用户:代码跑通pytorch,一个金鱼图像。你的支持是我更新的动力。


一、前置条件

  • 操作系统:Windows 10(版本 2004 及以上)或 Windows 11
  • 权限:需要管理员权限运行 PowerShell

二、检查 WSL 状态

打开 PowerShell(管理员),运行以下命令检查 WSL 是否已安装:

powershell 复制代码
wsl --status

如果提示 未安装适用于 Linux 的 Windows 子系统,说明需要安装。


三、安装步骤

方法一:一键安装(推荐)

直接执行以下命令,会自动完成 WSL 功能启用 + Ubuntu 下载安装:

powershell 复制代码
wsl --install -d Ubuntu

该命令会自动完成:

  1. 启用 WSL 功能
  2. 启用虚拟机平台
  3. 下载并安装 Linux 内核
  4. 将 WSL 2 设为默认版本
  5. 下载并安装 Ubuntu

注意 :执行后系统会提示 "请求的操作成功。直到重新启动系统前更改将不会生效。" ,此时需要 重启电脑

方法二:手动安装(旧版 Windows 10)

如果 wsl --install 不可用,需要手动执行以下步骤:

powershell 复制代码
# 1. 启用 WSL 功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

# 2. 启用虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

# 3. 重启电脑

重启后继续执行:

powershell 复制代码
# 4. 设置默认 WSL 版本为 2
wsl --set-default-version 2

# 5. 安装 Ubuntu
wsl --install -d Ubuntu

四、查看可用发行版

如果想查看所有可安装的 Linux 发行版,运行:

powershell 复制代码
wsl --list --online

输出示例:

NAME FRIENDLY NAME
Ubuntu Ubuntu
Ubuntu-24.04 Ubuntu 24.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
archlinux Arch Linux
openSUSE-Tumbleweed openSUSE Tumbleweed
... ...

安装指定版本示例:

powershell 复制代码
wsl --install -d Ubuntu-24.04

五、自定义安装目录(安装到 D 盘)

默认情况下,wsl --install -d Ubuntu 会将系统安装到 C 盘(%LOCALAPPDATA%\Packages\ 下)。如果想安装到其他目录(如 D:\Software\wsl),可以使用以下方法:

方法一:使用 --location 参数一键安装(推荐)

WSL 支持通过 --location 参数直接指定安装目录,最简单的方式

powershell 复制代码
wsl --install -d Ubuntu --location D:\Software\wsl

该命令会自动完成:

  1. 下载并安装 Ubuntu
  2. 将虚拟磁盘文件(ext4.vhdx)存储到 D:\Software\wsl 目录
  3. 首次安装完成后会提示设置用户名和密码

注意:如果 WSL 功能尚未启用,首次执行后需要重启电脑,重启后再次运行该命令即可开始下载安装 Ubuntu。

方法二:先安装再迁移

适用于已经通过 wsl --install -d Ubuntu 安装到 C 盘,想迁移到 D 盘的情况。

powershell 复制代码
# 1. 确认 Ubuntu 已安装并完成初始配置(设置好用户名密码)
wsl -l -v

# 2. 关闭 WSL
wsl --shutdown

# 3. 导出当前 Ubuntu 为备份文件
wsl --export Ubuntu D:\Software\ubuntu-backup.tar

# 4. 注销原来的 Ubuntu(会删除 C 盘上的数据)
wsl --unregister Ubuntu

# 5. 创建目标目录并导入到新位置
mkdir D:\Software\wsl
wsl --import Ubuntu D:\Software\wsl D:\Software\ubuntu-backup.tar

# 6. 设置默认登录用户(替换 <你的用户名> 为你之前设置的用户名)
ubuntu config --default-user <你的用户名>

# 7. 删除备份文件(可选)
Remove-Item D:\Software\ubuntu-backup.tar

安装验证

powershell 复制代码
# 确认安装位置和版本
wsl -l -v

确认 D:\Software\wsl 目录下存在 ext4.vhdx 文件,说明安装成功。

提示 :方法一使用 --location 安装的发行版与默认安装体验一致,会出现在开始菜单中。方法二通过 --import 导入的发行版不会出现在开始菜单,需要通过 wsl -d Ubuntu 或 Windows Terminal 启动。


六、重启后首次配置

  1. 重启电脑后,在开始菜单中搜索 Ubuntu 并打开
  2. 首次启动会自动完成 Ubuntu 的安装配置(需等待几分钟)
  3. 系统会提示设置 用户名密码
  4. 设置完成后即可使用 Ubuntu 终端

如果重启后 Ubuntu 没有自动出现,在 PowerShell 中再次运行 wsl --install -d Ubuntu,此时会直接下载安装镜像(不再需要重启)。


七、常用 WSL 命令

命令 说明
wsl 进入默认 Linux 发行版
wsl -l -v 查看已安装的发行版和 WSL 版本
wsl --list --online 查看可安装的发行版列表
wsl --update 更新 WSL 内核
wsl --set-default-version 2 设置默认 WSL 版本为 2
wsl --set-default Ubuntu 设置默认发行版
wsl --shutdown 关闭所有 WSL 实例
wsl --terminate Ubuntu 关闭指定发行版
wsl --unregister Ubuntu 卸载指定发行版(数据会丢失)
wsl --export Ubuntu D:\backup.tar 导出发行版备份
wsl --import Ubuntu2 D:\wsl D:\backup.tar 从备份导入发行版

八、常见问题

Q1:安装报错 0x80370102

需要在 BIOS 中开启虚拟化技术(Intel VT-x / AMD-V)。

Q2:安装报错 0x800701bc

需要手动下载安装 WSL2 Linux 内核更新包:

Q3:WSL 版本为 1,如何升级到 2?

powershell 复制代码
# 查看当前版本
wsl -l -v

# 转换为 WSL 2
wsl --set-version Ubuntu 2

Q4:如何在 VS Code 中使用 WSL?

  1. 安装 VS Code 扩展:WSL(Remote - WSL)
  2. Ctrl+Shift+P,输入 WSL: Connect to WSL
  3. 即可在 VS Code 中直接操作 Linux 文件系统

Q5:Windows 和 Ubuntu 之间如何访问文件?

  • 在 Ubuntu 中访问 Windows 文件/mnt/c/(对应 C 盘)
  • 在 Windows 中访问 Ubuntu 文件 :资源管理器地址栏输入 \\wsl$\Ubuntu

九、总结

完整安装流程:

复制代码
检查 WSL 状态 → wsl --install -d Ubuntu → 重启电脑 → 打开 Ubuntu → 设置用户名密码 → 完成

WSL 2 相比 WSL 1 拥有完整的 Linux 内核、更好的文件系统性能和完整的系统调用兼容性,推荐使用 WSL 2。


作者环境:Windows 11 + WSL 2 + Ubuntu

如果本文对你有帮助,欢迎点赞收藏!

相关推荐
数智化管理手记1 天前
精益生产中的TPM管理是什么?一文破解设备零故障的密码
服务器·网络·数据库·低代码·制造·源代码管理·精益工程
EDPJ1 天前
当图像与文本 “各说各话” —— CLIP 中的模态鸿沟与对象偏向
深度学习·计算机视觉
Vect__1 天前
深刻理解进程、线程、程序
linux
w6100104661 天前
CKAD-2026-Ingress
运维·k8s·ckad
极梦网络无忧1 天前
OpenClaw 基础使用说明(中文版)
python
charlee441 天前
最小二乘问题详解17:SFM仿真数据生成
c++·计算机视觉·sfm·数字摄影测量·无人机航测
codeJinger1 天前
【Python】操作Excel文件
python·excel
@insist1231 天前
网络工程师-生成树协议(STP/RSTP/MSTP)核心原理与应用
服务器·开发语言·网络工程师·软考·软件水平考试
末日汐1 天前
传输层协议UDP
linux·网络·udp
Fleshy数模1 天前
OpenCV 实时人脸检测实战:从视频文件到人脸框标注
人工智能·opencv·计算机视觉