欢迎关注专栏: AI 开发技术
- 下一篇: WSL2 全栈开发环境搭建 基于 SDKMAN 与 NVM 在 WSL2 中搭建并管理多版本 Java 与 Node.js 环境。
WSL2 与 Ubuntu 22.04 基础环境部署指南
文章目录
- [WSL2 与 Ubuntu 22.04 基础环境部署指南](#WSL2 与 Ubuntu 22.04 基础环境部署指南)
-
- [1. 业务背景 / 核心问题](#1. 业务背景 / 核心问题)
- [2. 核心安装流程](#2. 核心安装流程)
-
- [2.1 启用系统级特性](#2.1 启用系统级特性)
- [2.2 安装并配置 WSL2](#2.2 安装并配置 WSL2)
- [2.3 Ubuntu22.04 (WSL) 终端的日常启停](#2.3 Ubuntu22.04 (WSL) 终端的日常启停)
- [3. 常见问题排查:网络与软件源优化](#3. 常见问题排查:网络与软件源优化)
-
- [3.1 解决 localhost 代理未镜像问题](#3.1 解决 localhost 代理未镜像问题)
- [3.2 替换国内 APT 镜像源](#3.2 替换国内 APT 镜像源)
- [4. 总结](#4. 总结)
关键词 :WSL2, Ubuntu, 网络代理镜像, 国内软件源
阅读耗时:约 10 分钟

本文为个人技术学习笔记分享,记录工程实践过程,仅供参考。
1. 业务背景 / 核心问题
在 Windows 生态下进行全栈与中间件开发时,原生环境常面临系统兼容性与性能瓶颈。Windows Subsystem for Linux (WSL2) 结合 Ubuntu 22.04 提供了接近原生 Linux 的开发体验。本文主要解决 WSL2 的标准化安装,以及开发者常遇到的网络代理失效痛点。
2. 核心安装流程
2.1 启用系统级特性
必须先开启 Windows 的"适用于 Linux 的 Windows 子系统"和"虚拟机平台"功能。
控制面板->程序和功能->启用或关闭Windows功能->勾选 适用于Linux的Windows子系统和Windows虚拟机监控程序平台

在管理员权限的 PowerShell 中执行:
powershell
# 启用 WSL
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
# 启用虚拟机平台
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
执行完毕后,请务必重启计算机使内核功能生效。
2.2 安装并配置 WSL2
重启后,继续在 PowerShell 中设置默认架构版本并安装 Ubuntu 22.04 LTS:
可选:不更新可能报错,运行
wsl.exe --update更新。
powershell
# 设置默认架构为 WSL2
wsl --set-default-version 2
# 查看可以安装的Linux
wsl.exe --list --online

shell
# 在线安装 Ubuntu 22.04
wsl.exe --install Ubuntu-22.04
安装过程中,系统会提示创建 UNIX 用户名与密码,按提示输入即可完成系统初始化。

查看已安装的Linux
shell
wsl.exe --list

2.3 Ubuntu22.04 (WSL) 终端的日常启停
- 启动 :在终端输入
wsl -d Ubuntu-22.04或从开始菜单直接启动。 - 退出当前会话 :输入
exit或按Ctrl + D。 - 完全关闭实例 :在 Windows 侧执行
wsl --shutdown。
3. 常见问题排查:网络与软件源优化
3.1 解决 localhost 代理未镜像问题
在使用 WSL2 时,终端常会出现如下报错警告:
wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。
核心原因:宿主机(Windows)开启了网络代理,但在 NAT 模式下,WSL 实例默认无法直接走宿主机的代理通道。
解决方案 :通过修改 .wslconfig 开启镜像网络模式。
-
在 Windows 资源管理器中进入
C:\Users\<你的Windows用户名>目录。 -
创建或编辑
.wslconfig文件,写入以下配置:shell[experimental] autoMemoryReclaim=gradual networkingMode=mirrored dnsTunneling=true firewall=true autoProxy=true如果 Windows 提示"文件名不合法",可以先保存为 wslconfig.txt,然后在命令行里重命名:
ren wslconfig.txt .wslconfig -
在 PowerShell 执行
wsl --shutdown后重新进入 Ubuntu,警告即可解除。
3.2 替换国内 APT 镜像源
为保障后续开发组件下载顺畅,需将 Ubuntu 默认镜像源替换为国内(如阿里/清华)源。
bash
# 1. 备份原配置
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
# (可选)检查是否备份完成
cat /etc/apt/sources.list.bak
# 2. 编辑源列表
sudo nano /etc/apt/sources.list
清除原内容,写入阿里源配置(以 Jammy 版本为例):
shell
deb https://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb https://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
ctrl+o 保存
ctrl+x 退出
保存后更新包索引:
bash
sudo apt update
4. 总结
本文梳理了 WSL2 + Ubuntu 22.04 的工程化基础安装流程,并着重解决了 NAT 模式下网络代理失效的痛点。拥有纯净且网络畅通的 Linux 底层后,即可开始构建更上层的全栈与中间件开发环境。