当前位置: 首页 > news >正文

WSL2 启动报错“拒绝访问“ E_ACCESSDENIED 完整解决方案

WSL2 启动报错"拒绝访问" E_ACCESSDENIED 完整解决方案

  • 前言
  • 一、问题现象
  • 二、解决步骤
    • 2.1 关闭 WSL
    • 2.2 查看当前文件权限
    • 2.3 查看当前用户名
    • 2.4 以管理员身份修复权限
    • 2.5 重新启动 WSL
  • 三、常见原因总结
  • 四、补充:关于 localhost 代理警告
  • 总结

前言

将 WSL 迁移到非系统盘(如 D 盘)后,再次启动时可能遇到“拒绝访问”错误,本文记录完整排查与修复过程。


一、问题现象

打开 PowerShell,输入wsl启动,报错如下:

PS D:\file\军哥聊技术>wsl 无法将磁盘"\\?\D:\Software\wsl\ext4.vhdx"附加到 WSL2: 拒绝访问。 错误代码: Wsl/Service/CreateInstance/MountDisk/HCS/E_ACCESSDENIED

根本原因:当前 Windows 用户对 WSL2 虚拟磁盘文件ext4.vhdx没有完全控制权限,导致 WSL 无法挂载磁盘。


二、解决步骤

2.1 关闭 WSL

先确保 WSL 完全关闭:

wsl--shutdown

2.2 查看当前文件权限

icacls"D:\Software\wsl\ext4.vhdx"

输出如下:

D:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F) NT AUTHORITY\SYSTEM:(I)(F) NT AUTHORITY\Authenticated Users:(I)(M) BUILTIN\Users:(I)(RX)

可以看到:

  • AdministratorsSYSTEM有完全控制权限(F)
  • 普通用户只有读取和执行权限(RX)缺少写入权限

2.3 查看当前用户名

$env:USERNAME

记住输出的用户名(例如23670),下一步要用。

2.4 以管理员身份修复权限

普通终端没有权限修改该文件的 ACL,直接运行icacls /grant会报"拒绝访问":

# ❌ 普通权限下会失败icacls"D:\Software\wsl\ext4.vhdx"/grant"23670:(F)"# 输出:D:\Software\wsl\ext4.vhdx: 拒绝访问。

正确做法——通过Start-Process -Verb RunAs提权执行,运行后会弹出UAC 管理员确认窗口,点击“是”

Start-Processpowershell-Verb RunAs-ArgumentList"-Command","icacls 'D:\Software\wsl\ext4.vhdx' /grant '你的用户名:(F)'; icacls 'D:\Software\wsl' /grant '你的用户名:(OI)(CI)(F)'; pause"

⚠️注意:将你的用户名替换为上一步获取的实际用户名。

例如用户名为23670,完整命令为:

Start-Processpowershell-Verb RunAs-ArgumentList"-Command","icacls 'D:\Software\wsl\ext4.vhdx' /grant '23670:(F)'; icacls 'D:\Software\wsl' /grant '23670:(OI)(CI)(F)'; pause"

参数说明

参数含义
(F)Full Control,完全控制权限
(OI)Object Inherit,子文件继承此权限
(CI)Container Inherit,子文件夹继承此权限

等弹出的管理员窗口显示“请按任意键继续”后,说明权限修复成功。

2.5 重新启动 WSL

wsl

正常输出:

To run acommandas administrator(user"root"), use"sudo <command>".See"man sudo_root"fordetails.(base)wyj@wyj:/mnt/d/file/军哥聊技术$

WSL 启动成功!


三、常见原因总结

原因说明
WSL 迁移到非系统盘从 C 盘迁移到 D 盘后,新位置的文件权限未正确继承
Windows 更新系统更新后可能重置部分文件夹权限
手动移动 vhdx 文件复制/移动虚拟磁盘文件时权限丢失
多用户环境其他管理员创建的 WSL 实例,当前用户无权限

四、补充:关于 localhost 代理警告

启动时可能看到以下警告:

wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。

这条警告不影响 WSL 正常使用,可以忽略。如需消除,在%USERPROFILE%\.wslconfig中添加:

[wsl2] networkingMode=mirrored

保存后执行:

wsl--shutdown wsl

重启即可消除警告。


总结

步骤命令
关闭 WSLwsl --shutdown
查看权限icacls "D:\Software\wsl\ext4.vhdx"
查看用户名$env:USERNAME
提权修复权限Start-Process powershell -Verb RunAs ...
重启 WSLwsl

核心思路:用管理员权限给当前用户授予 vhdx 文件的完全控制权限,一行命令即可解决。

PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)NT AUTHORITY\Authenticated Users:(I)(M)BUILTIN\Users:(I)(RX)已成功处理1个文件;处理0个文件时失败 PS D:\file\军哥聊技术>$env:USERNAME PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)NT AUTHORITY\Authenticated Users:(I)(M)BUILTIN\Users:(I)(RX)已成功处理1个文件;处理0个文件时失败 PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)NT AUTHORITY\Authenticated Users:(I)(M)BUILTIN\Users:(I)(RX)PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)PS D:\file\军哥聊技术>wsl --shutdown;icacls"D:\Software\wsl\ext4.vhdx"2>$nullD:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)D:\Software\wsl\ext4.vhdx BUILTIN\Administrators:(I)(F)NT AUTHORITY\SYSTEM:(I)(F)NT AUTHORITY\Authenticated Users:(I)(M)BUILTIN\Users:(I)(RX)已成功处理1个文件;处理0个文件时失败 PS D:\file\军哥聊技术>$env:USERNAME23670PS D:\file\军哥聊技术>icacls"D:\Software\wsl\ext4.vhdx"/grant"${env:USERNAME}:(F)"D:\Software\wsl\ext4.vhdx: 拒绝访问。 已成功处理0个文件;处理1个文件时失败 PS D:\file\军哥聊技术>Start-Process powershell-VerbRunAs-ArgumentList"-Command","icacls 'D:\Software\wsl\ext4.vhdx' /grant '23670:(F)'; icacls 'D:\Software\wsl' /grant '23670:(OI)(CI)(F)'; pause"PS D:\file\军哥聊技术>wsl-l-vNAME STATE VERSION * Ubuntu Stopped2PS D:\file\军哥聊技术>wsl wsl: 检测到 localhost 代理配置,但未镜像到 WSL。NAT 模式下的 WSL 不支持 localhost 代理。 To run acommandas administrator(user"root"), use"sudo <command>".See"man sudo_root"fordetails.(base)wyj@wyj:/mnt/d/file/军哥聊技术$
http://www.jsqmd.com/news/521878/

相关文章:

  • 云端调用大模型--以阿里云百炼平台为例
  • openclaw对接高德地图,让你的龙虾为你定制旅游攻略或行程
  • HTML的基本用法
  • Linux命令-mkbootdisk(可建立目前系统的启动盘)
  • 2026年性价比高的厨房大单槽工厂推荐:洗菜盆大单槽/厨房水槽大单槽优质供应商推荐 - 行业平台推荐
  • ORA-12532: TNS:invalid argument 故障解析,Oracle报错远程处理技巧与修复方法分享
  • Ubuntu 20.04下Livox Mid360激光雷达ROS驱动配置全攻略(含常见问题解决)
  • 第八届蓝桥杯的部分题(参照公开网课)
  • 解决Next.js + Sharp在Vercel环境下SVG转PNG的中文乱码问题
  • 发布blazor应用到Linux, 使用nginx作为WebSocket代理
  • 2026年靠谱的Z型输送机厂家推荐:板链输送机/无轴螺旋输送机专业制造厂家推荐 - 行业平台推荐
  • 如何编辑一个网页?
  • vue开发流程
  • 阅读《基于RISC-V架构的嵌入式系统开发》
  • 从3开始制作agent——对话流模型
  • 嵌入式软件测试工具选型与工程实践指南
  • 基于STM32的宿舍多源安防监控系统设计与实现
  • AHB总线读写RAM
  • LibreCAD编译进阶:如何优化Qt Creator配置提升编译效率(附性能对比测试)
  • AI破界:2026消费创新爆发:AI助手一句话下单1.2亿次背后的商业变局
  • 超越CBAM与ECA:YOLOv8引入Shuffle Attention(SA)机制,实现轻量级高效注意力
  • 明文注入隐忧:CVE-2026-1642漏洞深度解析,NGINX全球部署安全预警
  • TwinCAT3 YT Scope Project实战:如何用倍福工具实现工业自动化数据可视化(附多曲线叠加技巧)
  • Uibot实战:自动抓取校内期刊分级列表,科研党必备的文献查询自动化工具
  • 开源 AI 助手 OpenClaw 2026.2.23 发布:安全更新与 AI 能力双轮驱动升级
  • 基于蚂蚁-遗传优化算法的路径规划问题(Matlab代码实现)
  • 在CentOS 7上给KVM虚拟机直通N卡跑AI:从硬件检查到避坑实战
  • 深度解析AlienFX Tools:开源Alienware硬件控制终极解决方案
  • 别再只会用BotFather了!用Python-telegram-bot库给你的Telegram机器人加个‘天气查询’功能(附完整代码)
  • RTMP vs. HTTP-FLV:直播协议选型指南与性能对比