You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:无法通过PowerShell访问并删除用户配置磁盘VHDX中的.auc文件

解决无法删除User Profile Disk VHDX内.auc文件的问题

你之前执行的Get-childItem -path "Shared folder" -Include *.auc -recurse | Remove-item -force命令无效,核心原因是:PowerShell的文件系统命令无法直接穿透VHDX虚拟磁盘文件,读取内部的文件结构。要删除VHDX里的.auc文件,必须先挂载虚拟磁盘,操作完成后再卸载。

具体解决方案步骤

下面是可直接运行的PowerShell脚本,包含完整的挂载、删除、卸载流程:

# 替换为你的网络共享文件夹路径
$sharedFolderPath = "\\your-server\your-shared-folder"

# 获取共享文件夹下所有的VHDX文件(递归查找子文件夹)
$vhdxFiles = Get-ChildItem -Path $sharedFolderPath -Filter "*.vhdx" -Recurse

# 遍历每个VHDX文件进行处理
foreach ($vhdx in $vhdxFiles) {
    $mountedVhd = $null
    try {
        # 挂载VHDX(使用PassThru返回挂载对象,方便后续操作)
        $mountedVhd = Mount-VHD -Path $vhdx.FullName -PassThru -ErrorAction Stop
        
        # 获取挂载后的卷盘符(比如 "E:")
        $driveLetter = (Get-Volume -DiskImage $mountedVhd).DriveLetter + ":"
        
        # 查找并删除所有.auc文件,-Force参数处理隐藏/系统文件
        Get-ChildItem -Path $driveLetter -Filter "*.auc" -Recurse -Force | Remove-Item -Force -ErrorAction SilentlyContinue
        
        Write-Host "✅ 成功处理VHDX:$($vhdx.Name)"
    }
    catch {
        Write-Warning "❌ 处理VHDX失败 $($vhdx.FullName):$($_.Exception.Message)"
    }
    finally {
        # 无论成功失败,都确保卸载VHDX,避免占用
        if ($mountedVhd) {
            Dismount-VHD -Path $vhdx.FullName -Force -ErrorAction SilentlyContinue
        }
    }
}

注意事项

  • 需要管理员权限:运行PowerShell时右键选择"以管理员身份运行",挂载/卸载VHD需要系统权限
  • 确保VHDX未被占用:虽然你测试时用户未连接,但如果仍有进程占用VHDX,脚本里的-Force参数会强制卸载
  • Hyper-V cmdlet依赖:如果系统没有Mount-VHD和Dismount-VHD命令,需要在Windows功能中启用「Hyper-V 管理工具」(不需要完整安装Hyper-V角色)
  • 自定义筛选:如果只需要处理特定用户的VHDX,可以修改Get-ChildItem的-Filter或添加Where-Object条件,比如筛选包含特定用户名的VHDX文件

内容的提问来源于stack exchange,提问作者Anshul Srivastava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:41:43