You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Windows下启动Ubuntu 22.04时触发Wsl/Service/0x80040326错误的求助

Windows下启动Ubuntu 22.04时触发Wsl/Service/0x80040326错误的求助

问题描述

我在Windows上安装了Ubuntu 22.04应用,之前一直正常,直到某天崩溃后,现在启动Ubuntu时就会出现这个错误:
Error: 0x80040326
Error code: Wsl/Service/0x80040326
Press any key to continue...

我的环境信息:

  • Windows PowerShell版本2
  • 执行wsl --list --verbose输出:
NAME            STATE           VERSION
* Ubuntu-22.04    Running         2
  • 使用Microsoft Office Home 10.0.22621 Build 22621

尝试重装也无法解决:
Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
Enter new UNIX username: xxxxx
New password:
Retype new password:
Sorry, passwords do not match.
passwd: Authentication token manipulation error
passwd: password unchanged
Try again? [y/N] y
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
Error: 0x80040326
Error code: Wsl/Service/0x80040326
Press any key to continue...

解决方案建议

嗨Michael,这个0x80040326错误确实比较冷门,我整理了几个针对性的修复步骤,你可以按顺序试试:

  • 重启WSL核心服务
    首先尝试重置WSL的后台服务,这是解决很多WSL启动问题的基础操作。打开管理员权限的PowerShell,依次执行:

    net stop LxssManager
    net start LxssManager
    

    执行完成后再启动Ubuntu,看看错误是否消失。

  • 修复WSL2组件与内核
    虽然你的WSL列表显示版本是2,但可能存在组件损坏的情况。可以先切换版本再切回,强制重建相关组件:

    wsl --set-version Ubuntu-22.04 1
    wsl --set-version Ubuntu-22.04 2
    

    另外,务必更新WSL内核到最新版本,执行:

    wsl --update
    

    这里要提醒下:你的PowerShell版本是2,这是比较老旧的版本,可能无法支持部分WSL的新命令参数,建议先把PowerShell升级到5.1或更高版本(Windows 10/11自带5.1版本,你可以直接搜索打开“Windows PowerShell”而非旧版的PowerShell 2),这能避免不少兼容性问题。

  • 彻底清理残留后重装
    之前的重装失败大概率是因为残留的配置文件干扰,你可以尝试完全清理后重新安装:

    1. 打开Windows设置 -> 应用 -> 找到“Ubuntu 22.04 LTS”,点击卸载
    2. 打开文件资源管理器,输入路径%userprofile%\AppData\Local\Packages,找到以CanonicalGroupLimited.Ubuntu22.04LTS_开头的文件夹,右键删除
    3. 打开Microsoft Store,重新搜索安装Ubuntu 22.04 LTS,完成后再设置用户账号
  • 检查并更新Windows系统
    这个错误有时和Windows系统的组件更新不完整有关,建议你打开Windows设置 -> Windows更新 -> 检查所有可用更新(包括可选更新里的WSL、Linux内核相关组件),安装完成后重启电脑再尝试启动Ubuntu。

如果以上步骤都没解决,你可以尝试收集WSL的日志信息(执行wsl --debug-shell或者查看事件查看器里的WSL相关日志),不过先把上面的步骤试完应该能解决大部分情况。

备注:内容来源于stack exchange,提问作者Michael Emerson

火山引擎 最新活动