Win11系统下安装 WSL2 + Ubuntu 流程

前言:最近在看《【TRAE专家课】------从零开始打造采购管理系统》,看到第九章《业务后端的实现》发现用的数据库是 supabase,又看了一下 supabase 依赖 docker desktop,在 windows 上使用 docker desktop 又依赖 WSL 2 作为后端运行环境。所以,在安装 docker desktop 之前,需要先 安装 WSL 2 并配置至少一个 Linux 发行版(如 Ubuntu)(我的系统是 win11)。

照例先拷问一遍大厂 AI,基本没回答对,不是这错就是那太简单,所以又网上搜罗了一圈,自己对着跑一遍,先把 WSL2 + Ubuntu 搞定,后续的工作后面再记。

前前言:Trae 是字节跳动推出的一款 AI 原生集成开发环境(IDE),它通过自然语言描述即可自动生成、调试和优化代码,支持中英文指令,旨在降低编程门槛。Trae 具备智能问答、代码自动补全、逻辑审查等功能,能够独立完成各类开发任务,帮助开发者高效推进项目。

前前前言:TRAE 专家课 是由 TRAE 官方推出的高阶实战课程体系,由具备一线开发实战经验的 TRAE Expert 成员亲自策划与输出,覆盖架构思维、项目实战、平台开发等中高阶能力模块。课程面向专业中文开发者群体,主打「进阶能力提升 + 架构实战训练」,帮助开发者从熟练使用者进阶为具备架构思维和项目管理能力的"TRAE 高阶用户"。链接就不放了,需要的自己找找就能找到了。

网上说有几种上安装方式,依个人来看还是 GUI 下安排最方便,不用记那些冗长的命令行和参数,GUI 下点点鼠标、随便敲几下键盘就安装好,对新手小白最友好,对老鸟也差不多。

以下用到的命令行均在 powershell 中以管理员方式运行。

一、安装 WSL2

1、 打开控制面板, 进入 程序和功能 界面,点击 启用或关闭 Windows 功能

win+s 搜索里输入"控制面板"或在 win+r 运行里输入"appwiz.cpl",打开的就是传统的控制面板了。

2、启用 WSL 和虚拟机平台

  • Hyper-V
  • 虚拟机平台 / Windows 虚拟机监控程序平台
  • 适用于 Linux 的 Windows 子系统

找到对应选项并勾选,然后点击 确定,系统将开始应用更改。随后会弹出提示要求重启计算机,重启计算机安装应用更新。

3、将 WSL 默认版本设置为 WSL2(Windows 11 默认已安装 WSL2,不需要执行该命令)

bash 复制代码
wsl --set-default-version 2

二、WSL2 安装 Ubuntu-20.04 至 D 盘

1、创建文件夹

在 D 盘中创建 WSL 文件夹,并在其下创建 Ubuntu-20.04。

文件夹名可自定,最好不要有空格和中文,避免出现奇奇怪怪的问题。

2、下载并导出 Ubuntu-20.04

首先,查看可用的 WSL 发行版:

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

其次,安装 Ubuntu-20.04。

bash 复制代码
wsl --install -d Ubuntu-20.04

第三、安装完毕后会要求你创建一个新用户,按照提示输入用户名和密码(输入密码无显示,且要输入两次)即可,然后按 Ctrl + D 退出即可。

第四,导出 Ubuntu-20.04 为 .tar 文件

bash 复制代码
wsl --export Ubuntu-20.04 D:\WSL\Ubuntu-20.04\Ubuntu-20.04.tar

这里请对应自己的实际路径,不要照搬。

这会下载 Ubuntu-20.04 并将其导出到 D:\WSL\Ubuntu-20.04\Ubuntu-20.04.tar,提示完成后在文件夹中可以看到 Ubuntu-20.04.tar。

第五,取消注册原有的 Ubuntu-20.04(默认在 C 盘)。

现在 C 盘留到 150G 都快不够用了,想想当年用 2G、4G 硬盘的年代......

必须要把它清理掉!

bash 复制代码
wsl --unregister Ubuntu-20.04

3. 导入 Ubuntu-20.04 到 D 盘

bash 复制代码
wsl --import Ubuntu-20.04 D:\WSL\Ubuntu-20.04 D:\WSL\Ubuntu-20.04\Ubuntu-20.04.tar --version 2

运行以上命令,将 Ubuntu-20.04 重新导入到 D:\WSL\Ubuntu-20.04(注意目录)。

在 D:\WSL\Ubuntu-20.04 目录下,WSL2 发行版的文件存储在一个 虚拟磁盘映像文件(ext4.vhdx)中,该文件用于存储整个 Ubuntu-20.04 文件系统

4. 启动 Ubuntu-20.04

bash 复制代码
wsl -d Ubuntu-20.04

此时,系统默认以 root 用户登录,因为 WSL 手动导入的 Ubuntu 不会自动创建普通用户,需要手动创建。(要替换用户名)

bash 复制代码
adduser yourusername

输入两次密码,完成创建。

赋予新用户 sudo 权限。这样,新用户就可以使用 sudo 进行管理员操作。

bash 复制代码
usermod -aG sudo yourusername

修改默认登录用户为普通用户(可选)。

ctrl +d 退出 WSL 后输入如下命令,也可在新的 powershell 窗口中输入如下命令。

bash 复制代码
ubuntu2004 config --default-user yourusername

启动 WSL。

bash 复制代码
wsl -d Ubuntu-20.04

此时,系统默认以普通用户登录。

关闭 WSL,查看安装信息,出现如下信息表示安装成功(参数有顺序,不要弄错了)。

三、WSL 常用操作命令

WSL2(Windows Subsystem for Linux 2)提供了在 Windows 上运行完整 Linux 内核的能力,常用命令主要用于安装、管理、切换、导入导出及关闭子系统等操作。

安装与查看发行版

bash 复制代码
# 安装默认 Ubuntu
wsl --install
# 安装指定发行版
wsl --install -d Ubuntu-24.04
# 查看可在线安装的发行版
wsl --list --online # 或 wsl -l -o
# 查看已安装发行版及版本
wsl --list --verbose # 或 wsl -l -v

版本与默认设置

bash 复制代码
# 设置某发行版为 WSL2
wsl --set-version Ubuntu-22.04 2
# 设置默认 WSL 版本
wsl --set-default-version 2
# 设置默认发行版
wsl --set-default Ubuntu-22.04

启动与关闭

bash 复制代码
# 启动默认发行版
wsl
# 启动指定发行版
wsl -d Ubuntu-22.04
# 关闭所有 WSL 实例
wsl --shutdown
# 终止指定发行版
wsl --terminate Ubuntu-22.04 # 或 wsl -t Ubuntu-22.04

导出、导入与迁移

bash 复制代码
# 导出发行版为 tar 文件
wsl --export Ubuntu-22.04 D:\WSL\ubuntu2204.tar
# 从 tar 导入到指定目录
wsl --import Ubuntu-22.04 D:\WSL D:\WSL\ubuntu2204.tar --version 2

用户与配置

bash 复制代码
# 以指定用户运行
wsl --user root
# 修改发行版默认用户
Ubuntu-22.04 config --default-user myuser

卸载与清理

bash 复制代码
# 注销并卸载发行版(不可恢复)
wsl --unregister Ubuntu-20.04

磁盘挂载

bash 复制代码
# 挂载物理磁盘
wsl --mount <DiskPath>
# 卸载磁盘
wsl --unmount <DiskPath>

💡 提示

  • wsl --status 可查看当前 WSL 配置与内核版本。

  • 导出/导入功能可用于迁移 WSL 到其他磁盘,释放 C 盘空间。

  • 切换 WSL1/WSL2 可能耗时较长,建议提前备份数据。

相关推荐
鱼香rose__1 小时前
tmux和vim
linux·编辑器·vim
毕不了业的硏䆒僧1 小时前
NVIDIA DGX Spark | Ubuntu cuda13.0安装Pytorch GPU版本
pytorch·ubuntu·spark
EverydayJoy^v^1 小时前
RH134学习进程——五.调优系统性能
linux·运维·服务器
小李广1 小时前
修改MS源码—开发新接口:查询所有项目下面的模块
java·linux·服务器
shhpeng1 小时前
Debian packages 的签名与验证
运维·debian
猫猫的小茶馆2 小时前
【Linux 驱动开发】嵌入式 Linux 开发概念
linux·服务器·arm开发·stm32·单片机·嵌入式硬件·mcu
旺仔Sec2 小时前
2026年湖北省职业院校技能大赛5G组网与运维(高职学生组)任务书
运维·5g
小五传输2 小时前
探秘主流的内外网文件传输方式,解锁高效安全共享新途径
大数据·运维·安全
“αβ”2 小时前
UDP与TCP的区别
linux·运维·服务器·网络·网络协议·tcp/ip·udp