全网最全Win10/11系统下WSL2+Ubuntu20.04的全流程安装指南(两种支持安装至 D 盘方式)

全网最全Win10/11系统下WSL2+Ubuntu20.04的全流程安装指南(两种支持安装至 D 盘方式)

前言

WSL2(Windows Subsystem for Linux 2)是 Windows 提供的一种轻量级 Linux 运行环境,具备完整的 Linux 内核,并支持更好的文件系统性能和兼容性。它允许用户在 Windows 系统中运行 Linux 命令行工具和应用程序,而无需安装虚拟机或双系统。

本教程将介绍 如何安装 WSL2 并将 Ubuntu-20.04 安装到 D 盘,涵盖 WSL2 的启用、Ubuntu 的下载与解压、WSL2 发行版的导入,以及普通用户的设置与安装验证。这是全网最全的 WSL2 安装与配置指南,参考了大量博客教程,并结合实践经验,整理出最实用、最详细的方法,适用于所有 Windows 10/11 用户,绝对靠谱!!!

本教程涵盖:
两种 WSL2 启用方式(PowerShell 命令行 / Windows GUI 手动操作)
两种安装 Ubuntu-20.04 到 D 盘方式(官方迁移导入 / 手动下载解压)


一、安装 WSL2

方法一:PowerShell 命令行快速安装 WSL2(推荐)

1. 启用 Windows 子系统(WSL)功能

在 PowerShell(管理员模式)中运行:

dism.exe /online /enable-feature/featurename:Microsoft-Windows-Subsystem-Linux /all /norestart 
在这里插入图片描述
解释:/all:在所有用户上启用该功能/norestart:启用功能后不会立即重启

2. 启用虚拟机平台功能

WSL2 依赖 Windows 虚拟机功能,需要额外启用:

dism.exe /online /enable-feature/featurename:VirtualMachinePlatform /all /norestart 
在这里插入图片描述

3. 将 WSL 默认版本设置为 WSL2(视情况而定)

wsl --set-default-version 2 
Windows 11 默认已安装 WSL2,不需要执行该命令。Windows 10 用户 需要执行此命令,否则默认使用 WSL1。

4. 重启电脑

以上命令执行完成后,请重启电脑,以确保所有更改生效。

方法二:Windows GUI 手动安装 WSL2

1. 打开 Windows 功能管理

进入 程序和功能 界面,点击 启用或关闭 Windows 功能

在这里插入图片描述

按下 Win + R 组合键,输入以下命令,然后点击 确定 或直接按 Enter

appwiz.cpl 
在这里插入图片描述

2. 启用 WSL 和虚拟机平台

  • 找到并勾选以下两项,然后点击 确定,系统将开始应用更改。随后会弹出提示要求重启计算机,点击 立即重新启动(N) 以完成设置。:
    • 适用于 Linux 的 Windows 子系统
    • 虚拟机平台 / Windows 虚拟机监控程序平台
在这里插入图片描述
  • 如果你使用的是 Windows 11,还需要勾选:
    • Windows Hypervisor Platform(有些系统可能没有)
    • Hyper-V(如果你的 Windows 版本支持)
在这里插入图片描述

3. 将 WSL 默认版本设置为 WSL2(视情况而定)

wsl --set-default-version 2 
Windows 11 默认已安装 WSL2,不需要执行该命令。Windows 10 用户 需要执行此命令,否则默认使用 WSL1。

二、WSL2 安装 Ubuntu-20.04 至 D盘 (方法一 | 推荐)

1. 创建文件夹

  • D盘 创建 WSL 文件夹,并在该文件夹下创建 Ubuntu-20.04 文件夹。
在这里插入图片描述

2. 下载并导出 Ubuntu-20.04

取消注册原有的 Ubuntu-20.04,如果你已经安装了 Ubuntu-20.04(默认在 C 盘),可以将其从 WSL 注销:

wsl --unregister Ubuntu-20.04 
在这里插入图片描述

导出 Ubuntu-20.04.tar 文件

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,然后可以执行ls D:\WSL\Ubuntu-20.04查看Ubuntu-20.04.tar已经成功导出。

在这里插入图片描述

安装完毕后会要求你创建一个新用户,按照提示输入用户名和密码即可,然后按 Ctrl + D 退出即可。

在这里插入图片描述

安装 Ubuntu-20.04

wsl --install -d Ubuntu-20.04 

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

wsl --list --online 

如图所示为终端输出:

在这里插入图片描述

3. 导入 Ubuntu-20.04 到 D 盘

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

在这里插入图片描述

运行以下命令,将 Ubuntu-20.04 重新导入到 D:\WSL\Ubuntu-20.04

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 盘,而不是默认的 C 盘,如图所示正在安装。

在这里插入图片描述

4. 启动 Ubuntu-20.04

赋予新用户 sudo 权限

usermod-aGsudo yourusername 

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

创建新用户,在 WSL 终端(默认 root)下运行:

注意:请把 yourusername 替换为你想使用的用户名
adduser yourusername 
系统会要求你输入:新密码用户信息(全部可以直接回车跳过)
在这里插入图片描述

导入完成后,你可以启动 WSL:

wsl -d Ubuntu-20.04 

但此时,你会发现默认以 root 用户登录,因为 WSL 手动导入的 Ubuntu 不会自动创建普通用户,需要我们手动创建。

在这里插入图片描述

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

再次启动 WSL:

wsl -d Ubuntu-20.04 

此时,你会发现默认以普通用户登录:

clea

以管理员身份运行PowerShell,执行命令:

ubuntu2004 config --default-user yourusername 

三、WSL2 安装 Ubuntu-20.04 至 D盘 (方法二)

1. 创建文件夹

  • D盘 创建 WSL 文件夹,并在该文件夹下创建 Ubuntu-20.04 文件夹。
在这里插入图片描述

2. 下载 Ubuntu-20.04

方法一:命令行下载 Ubuntu-20.04 .appx 文件

  1. 打开刚才创建的 Ubuntu-20.04 文件夹。

在此处以管理员身份打开 PowerShell,输入以下命令:

Invoke-WebRequest-Uri https://aka.ms/wslubuntu2004 -OutFile Ubuntu-20.04.appx -UseBasicParsing 
在这里插入图片描述

方法二:浏览器手动下载 Ubuntu-20.04 .appx 文件

  1. 在浏览器中点击 Ubuntu 20.04 下载链接
  2. 直接在浏览器中下载 Ubuntu-20.04.appx,通常比 PowerShell 更快。
  3. 下载完成后,将文件移动到目标目录:D:\WSL\Ubuntu-20.04\
在这里插入图片描述

方法三:百度网盘链接下载 Ubuntu-20.04 .appx 文件

  1. 由于部分地区访问微软服务器较慢,导致 Ubuntu-20.04.appx 下载速度受限,因此提供 百度网盘高速下载 方式,以便用户更快获取安装包。
    • 文件名称:CanonicalGroupLimited.UbuntuonWindows_2004.2021.825.0.AppxBundle
    • 百度网盘下载链接点击下载
    • 提取码es9u
  2. 下载完成后,将文件移动到目标目录:D:\WSL\Ubuntu-20.04\

3. 解压 .appx 安装包

  1. D:\WSL\Ubuntu-20.04\ 目录下以管理员权限打开 PowerShell

如图所示成功解压出 Ubuntu_x64 文件夹。

在这里插入图片描述

进入 D:\WSL\Ubuntu-20.04\Extracted 目录,执行:

cd Extracted Rename-Item Ubuntu_2004.2021.825.0_x64.appx Ubuntu_20.04.zip Expand-Archive Ubuntu_2004.2021.825.0_x64.appx -DestinationPath D:\WSL\Ubuntu-20.04\Extracted\Ubuntu_x64 
在这里插入图片描述

如图所示成功解压出 Extracted 文件夹。

在这里插入图片描述

Windows 不支持直接运行 .appx,所以你需要手动解压,继续运行:

Rename-Item CanonicalGroupLimited.UbuntuonWindows_2004.2021.825.0.AppxBundle Ubuntu-20.04.zip Expand-Archive Ubuntu-20.04.zip -DestinationPath D:\WSL\Ubuntu-20.04\Extracted 
在这里插入图片描述
Rename-Item:将 .AppxBundle 重命名为 .zipExpand-Archive:使用 Windows 自带的解压工具解压到 D:\WSL\Ubuntu-20.04\Extracted如果 Expand-Archive 太慢,可以直接右键 .zip 文件,选择 解压到当前文件夹

4. 导入 WSL 并启动Ubuntu

启动 Ubuntu,执行:

wsl -d Ubuntu-20.04 

但此时,你会发现默认以 root 用户登录,因为 WSL 手动导入的 Ubuntu 不会自动创建普通用户,需要我们手动创建。

在这里插入图片描述

进入 Ubuntu_x64 目录,手动导入 WSL,在 D:\WSL\Ubuntu-20.04\Extracted\Ubuntu_x64 目录下执行:

cd Ubuntu_x64 wsl --import Ubuntu-20.04 D:\WSL\Ubuntu-20.04\ D:\WSL\Ubuntu-20.04\Extracted\Ubuntu_x64\install.tar.gz --version 2 

5. 创建普通用户并设置默认用户(可选)

修改默认用户,在 Windows PowerShell 中运行:

wsl -d Ubuntu-20.04 -u yourusername # 仅本次以普通用户登录

如图所示成功以 普通用户 登录。

在这里插入图片描述
注意:如果 Ubuntu-20.04 不能识别,先运行 wsl -l,来查看已安装的 WSL 发行版名称,然后在命令中替换 Ubuntu-20.04

赋予新用户 sudo 权限

usermod-aGsudo yourusername 

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

在这里插入图片描述

创建新用户,在 WSL 终端(默认 root)下运行:

注意:请把 yourusername 替换为你想使用的用户名
adduser yourusername 
系统会要求你输入:新密码用户信息(全部可以直接回车跳过)
在这里插入图片描述

6. 确认安装成功

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

在这里插入图片描述

确认安装成功

wsl -l -v 

如果输出类似下图,说明 WSL2 已经成功安装,并已将 Ubuntu-20.04 安装至 D盘

在这里插入图片描述

关闭并重启 WSL

wsl --shutdown 

Read more

【C++算法刷题营地】—— 【string类面试题】Cyber顶级骇客带你速刷 C++ string类 中的常见算法题

【C++算法刷题营地】—— 【string类面试题】Cyber顶级骇客带你速刷 C++ string类 中的常见算法题

⚡ CYBER_PROFILE ⚡ /// SYSTEM READY /// [WARNING]: DETECTING HIGH ENERGY 🌊 🌉 🌊 心手合一 · 水到渠成 >>> ACCESS TERMINAL <<<[ 🦾 作者主页 ][ 🔥 C语言核心 ][ 💾 编程百度 ][ 📡 代码仓库 ] --------------------------------------- Running Process: 100% | Latency: 0ms 索引与导读 * 一、字符串转换 * 1)字符串转换整数 * 关键点拨 * 完整代码 * 最直接的替代接口:stoi * 小试牛刀:整数转字符串 * 2)字符串相加 * 关键点拨 * 完整代码 * 3)仅仅反转字母 * 关键点拨 * 完整代码 * 4)反转字符串 * 4.

By Ne0inhk
C++ 智能指针完全指南:原理、用法与避坑实战(从 RAII 到循环引用)

C++ 智能指针完全指南:原理、用法与避坑实战(从 RAII 到循环引用)

🔥草莓熊Lotso:个人主页 ❄️个人专栏: 《C++知识分享》《Linux 入门到实践:零基础也能懂》 ✨生活是默默的坚持,毅力是永久的享受! 🎬 博主简介: 文章目录 * 前言: * 一. 智能指针的核心:RAII 设计思想 * 1.1 为什么需要智能指针? * 1.2 RAII:智能指针的设计灵魂 * 二. C++ 标准库智能指针:用法与场景 * 2.1 unique_ptr:独占式智能指针(推荐优先使用) * 2.2 shared_ptr:共享式智能指针(支持拷贝,重点了解) * 2.3 weak_ptr:弱引用智能指针(解决循环引用) * 2.3.1

By Ne0inhk
基于SpringBoot+Vue的健身房管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】

基于SpringBoot+Vue的健身房管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】

摘要 随着全民健身意识的不断提升和健康生活方式的普及,健身房行业迎来了快速发展期。传统健身房管理多依赖人工操作,存在会员信息管理混乱、课程预约效率低下、财务统计不准确等问题。信息化管理系统的引入能够有效解决这些问题,提升健身房运营效率和服务质量。本系统基于SpringBoot+Vue技术栈,旨在为健身房提供一套完整的数字化管理解决方案,涵盖会员管理、课程预约、设备维护、财务统计等核心功能模块。系统采用前后端分离架构,后端使用Java语言开发,前端采用Vue.js框架,数据库选用MySQL,通过MyBatis实现数据持久化操作。关键词:健身房管理系统、SpringBoot、Vue.js、MySQL、MyBatis。 系统实现了健身房日常运营的全面数字化管理,包括会员信息录入与查询、私教课程预约、团体课程管理、健身设备维护记录、财务收支统计等功能模块。后端采用SpringBoot框架提供RESTful API接口,前端通过Vue.js实现响应式用户界面,使用Element UI组件库提升用户体验。系统采用JWT进行身份认证,确保数据安全性;通过Redis缓存提升系统性能;使用EChar

By Ne0inhk
【Java 开发日记】我们来说一下 Mybatis 的缓存机制

【Java 开发日记】我们来说一下 Mybatis 的缓存机制

目录 核心概览 一级缓存 1. 作用域 2. 工作机制 3. 示例说明 4. 注意事项 二级缓存 1. 作用域 2. 开启与配置 3. 工作机制 4. 示例说明 5. 注意事项 缓存顺序与总结 使用建议 核心概览 * 一级缓存:默认开启,作用范围在 同一个 SqlSession 内。 * 二级缓存:需要手动配置开启,作用范围在 同一个 Mapper 命名空间(即同一个 Mapper 接口)内,可以被多个 SqlSession 共享。 一级缓存 1. 作用域 * SqlSession 级别:当同一个

By Ne0inhk