当前位置:首页 / wsl2 /

文件名 修改时间 大小 操作
.. - -
WSL 安装 CentOS 2025-03-09 00:01 -
111.txt 2025-03-09 00:17 2.99 KB
README.md 2025-03-09 00:19 3.53 KB
WSL 2 环境与 Docker Desktop 集成尚未启用.txt 2025-03-08 23:54 1.22 KB
win11 安装WSL 2 的内核 配置启动.txt 2025-03-08 23:54 2.4 KB
wsl.2.4.10.0.arm64.msi 2025-03-08 23:55 183.96 MB
wsl.2.4.10.0.x64.msi 2025-03-08 23:56 197.64 MB
wsl.2.4.11.0.arm64.msi 2025-03-08 23:56 182.68 MB
wsl.2.4.11.0.x64.msi 2025-03-08 23:57 196.29 MB
wsl.2.4.12.0.arm64.msi 2025-03-08 23:57 182.68 MB
wsl.2.4.12.0.x64.msi 2025-03-08 23:58 196.3 MB
wsl.2.4.9.0.arm64.msi 2025-03-08 23:54 184.03 MB
wsl.2.4.9.0.x64.msi 2025-03-08 23:55 197.66 MB
wsl_update_arm64.msi 2025-03-08 23:58 8.65 MB
wsl_update_x64.msi 2025-03-08 23:58 16.31 MB
README.md

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

打开 PowerShell(以管理员身份),运行以下命令启用虚拟机平台: dism.exe /Online /Enable-Feature /FeatureName:VirtualMachinePlatform /All

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

设置 WSL 版本为 2:

wsl --set-default-version 2

错误 0x80004005 是一个未指定的错误,通常出现在 WSL(Windows Subsystem for Linux)安装或启动时。可能的原因如下:

可能的原因及解决方案

  1. 确保 WSL 已启用 WSL 需要在 Windows 功能中启用:

  2. 打开 PowerShell(管理员权限)

    wsl --install

    如果 WSL 已安装但有问题,可以尝试更新:

    wsl --update

  3. 手动启用 WSL:

    • 在 Windows 搜索栏输入 启用或关闭 Windows 功能
    • 确保以下选项已勾选:
      • 适用于 Linux 的 Windows 子系统
      • 虚拟机平台
    • 勾选后 重启电脑

2. 确保 Windows 版本支持 WSL 2

  • 运行 winver 检查 Windows 版本,Windows 10 需要 1903(18362)及以上,Windows 11 也需要最新更新。

3. 以管理员权限运行 WSL

  • 有时权限问题会导致 0x80004005 错误,可以尝试:

    1. 右键 开始菜单,选择 Windows 终端(管理员)
    2. 输入:

      wsl --set-default-version 2

4. 检查 WSL 内核是否已安装

如果 WSL 内核缺失,会导致注册失败:

  1. 下载并安装 WSL 2 内核更新:微软官方 WSL 2 更新包
  2. 运行:

    wsl --set-default-version 2

5. 关闭 Hyper-V(如果适用)

某些情况下,Hyper-V 可能与 WSL 冲突:

  • 以管理员身份运行 PowerShell:

    bcdedit /set hypervisorlaunchtype off

  • 然后 重启电脑

  1. 重置 WSL** 如果以上方法都无效,可以尝试重置 WSL:
  2. 备份重要数据
  3. 以管理员身份运行:

    wsl --unregister <你的发行版名称>

    然后重新安装:

    wsl --install -d Ubuntu

如果问题仍然存在,可以提供更多环境信息,例如 Windows 版本、WSL 发行版等,我可以进一步帮你分析。

任务计划(后台运行)

此方法可以让 WSL2 在 Windows 启动后自动运行指定的子系统,即使关闭窗口也不会终止 WSL 进程。

步骤 1:创建 WSL2 后台运行脚本 打开 PowerShell(管理员模式)

在 Windows 搜索栏输入 PowerShell,右键选择 "以管理员身份运行"。

运行以下命令创建计划任务

$Action = New-ScheduledTaskAction -Execute "wsl.exe" -Argument "-d Ubuntu nohup sleep infinity &"

$Trigger = New-ScheduledTaskTrigger -AtLogOn

$Settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries

Register-ScheduledTask -TaskName "WSL2-AutoStart" -Action $Action -Trigger $Trigger -Settings $Settings -User "$env:UserName" -RunLevel Highest

说明:

-d Ubuntu:指定 WSL2 的子系统(请替换为你的子系统名称)。 nohup sleep infinity &:防止 WSL 终止,使其在后台一直运行。 -AtLogOn:在 Windows 用户登录时 自动运行 WSL2。 -RunLevel Highest:以 最高权限 运行任务,确保不会因为权限问题导致 WSL2 失败。 完成后,重启 Windows,WSL2 子系统会在后台自动运行。