如何安装Windows运维中的WSL2子系统并导入镜像

胖涛吖_6275

胖涛吖_6275

2026-04-07

626人浏览

原创

WSL2安装失败主因是Windows功能未启用,需以管理员身份运行PowerShell执行两条Enable-WindowsOptionalFeature命令并重启;版本需≥19041,BIOS虚拟化须开启;导入镜像要指定--version 2并配置默认用户及/etc/wsl.conf。

WSL2 安装失败提示“适用于 Linux 的 Windows 子系统已关闭”

这是 wsl2 启用前最常卡住的第一步,本质是 windows 功能没打开。不是权限问题,也不是网络问题,就是系统级开关没拨。

必须以管理员身份运行 PowerShell,执行:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart
和
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart
。注意两个命令缺一不可,VirtualMachinePlatform 是 WSL2 的底层依赖,只开子系统功能只会默认启用 WSL1。
  • 执行完必须重启电脑,不重启 wsl --set-default-version 2 会报错
  • Windows 版本低于 19041(即 2004)不支持 WSL2,别硬试
  • 某些 OEM 预装系统(如部分戴尔/惠普笔记本)可能禁用了 BIOS 中的虚拟化(VT-x/AMD-V),需进 BIOS 手动开启

wsl --import 导入镜像后无法启动,报错“Failed to launch Ubuntu”

常见于从第三方下载 rootfs.tar.gz 后直接 wsl --import,但忽略了发行版初始化逻辑。WSL 并不自动创建用户、设置密码或配置 /etc/passwd,它只是把文件解压进目录,然后试图用默认 shell 启动——而很多精简镜像压根没配 /bin/bash 或用户 entrypoint。

导入时务必指定默认用户,例如:

wsl --import MyUbuntu C:\wsl\MyUbuntu C:\temp\ubuntu-22.04-rootfs.tar.gz --version 2
,然后立即运行:
wsl -d MyUbuntu -u root
进入 root 环境,手动执行:
useradd -m -s /bin/bash myuser && passwd myuser
,再编辑 /etc/wsl.conf 加入:
[user]<br>default=myuser
  • 不要跳过 --version 2 参数,否则默认用 WSL1 导入,后续升级麻烦
  • wsl --import 不会自动运行 apt update 或修复 locale,首次启动后建议手动运行 apt update && apt install -y locales && locale-gen en_US.UTF-8
  • 镜像 tar 包里若不含 /init 或 /sbin/init,WSL 可能无法识别为合法发行版,优先选官方导出的 tar(如从已运行的 WSL 实例中用 wsl --export 生成)

导入后中文乱码、时区错误、DNS 解析失败

这些不是镜像本身的问题,而是 WSL2 启动时未读取 Windows 主机的环境上下文。WSL1 能自动继承,但 WSL2 是轻量虚拟机,默认隔离更彻底。

关键在 /etc/wsl.conf:必须存在且至少包含以下内容:

[boot]<br>command = "service dbus start"<br>[network]<br>generateHosts = true<br>generateResolvConf = true<br>[locale]<br>LANG = "en_US.UTF-8"
。其中 generateResolvConf = true 让 WSL 自动从 Windows 获取 DNS;generateHosts = true 同步主机名映射;LANG 避免终端乱码。
  • 修改 /etc/wsl.conf 后必须退出所有 WSL 实例并运行 wsl --shutdown,否则不生效
  • 时区同步靠 sudo timedatectl set-timezone $(cat /etc/timezone),但更稳的方式是在 Windows 中设好时区,再加 [wsl2] 段落到 %USERPROFILE%\AppData\Local\Packages\...\wsl.conf(全局 WSL2 配置)
  • 如果仍 DNS 失败,检查 Windows 主机是否启用了 IPv6,WSL2 当前对 IPv6 DNS 支持不稳定,可临时在 /etc/resolv.conf 中硬编码 nameserver 8.8.8.8(但该文件会被自动覆盖,得配合 generateResolvConf = false)

从 WSL1 升级到 WSL2 后磁盘 I/O 明显变慢

不是硬件问题,是 WSL2 默认使用 ext4 over VHDX,而 VHDX 在 Windows NTFS 上存在双重日志开销。尤其小文件读写、git status、npm install 这类操作延迟明显。

优化路径只有两条:一是把项目目录移到 WSL2 内部文件系统(如 /home/xxx/project),避开跨文件系统访问;二是启用实验性配置 metadata=true,在 /etc/wsl.conf 的 [wsl2] 段下加:

filesystem = "ext4"<br>metadata = true
。这会让 WSL2 绕过部分 NTFS 元数据限制,提升 30%~50% 小文件性能。
  • metadata=true 仅在 Windows 11 22H2+ 或 Windows 10 21H2+ 生效,旧版本忽略该配置
  • 不要在 Windows 文件系统(如 /mnt/c/xxx)里运行 Docker 构建或数据库,I/O 延迟可能高 5 倍以上
  • VHDX 文件会持续增长但不自动收缩,用 wsl --shutdown 后在 PowerShell 运行 diskpart → select vdisk file="...\ext4.vhdx" → attach vdisk → compact vdisk 才能回收空间
WSL2 的坑不在安装步骤多,而在每个环节都依赖上一环的正确状态:BIOS 虚拟化→Windows 功能→内核更新→镜像结构→wsl.conf 配置→目录位置。漏掉任意一个,表现出来的症状都像是“别的地方坏了”。
PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

437

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

880

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2632

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

876

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

789

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

394

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2376

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

4372

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

707

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.4万人学习