1. 项目概述:为什么我们要对系统“预装”组件动手?
如果你和我一样,是个对电脑桌面有“洁癖”的资深用户,或者你管理的是一批需要统一、纯净系统镜像的办公电脑,那么Windows 10/11系统里那些删不掉、关不掉的预装应用和组件,绝对是心头大患。今天要聊的,就是其中两个典型的“钉子户”:“入门”应用(Getting Started)和“Windows备份”组件(Windows Backup)。
“入门”这个应用,对于绝大多数非新手用户而言,其存在价值几乎为零。它通常在你首次开机或重大更新后弹出,展示一些基础操作指南和微软服务推广,一旦你看过,它就变成了一个占用开始菜单格子、在后台默默运行的“僵尸应用”。而“Windows备份”,对于已经拥有成熟、可控备份方案(如域控策略、第三方备份软件、文件历史记录到网络存储)的企业IT环境或高级用户来说,系统自带的这个集成度不高、可控性较差的备份方案,不仅多余,还可能因为其默认行为干扰到我们既定的备份策略。
所以,这个项目的核心目标非常明确:彻底、干净地从系统中移除这两个组件,释放空间,净化开始菜单,并杜绝任何潜在的自动恢复或后台活动。这不是简单的“卸载”,因为它们在控制面板的“应用和功能”里根本找不到卸载选项。我们需要深入系统底层,使用一些“非常规”但完全合法、基于系统自身管理工具的方法来实现。下面,我将结合我多年管理Windows系统的经验,为你拆解从原理到实操的完整路径,并分享那些官方文档绝不会告诉你的避坑技巧。
2. 核心思路与方案选型:为什么不用第三方工具?
面对系统预装组件的移除,市面上有很多“一键清理”的第三方工具。但作为一名有追求的从业者,我强烈建议你优先使用系统原生工具。原因有三:第一,安全性最高,避免引入不可控的第三方代码或潜在恶意软件;第二,可追溯和可脚本化,便于在批量部署环境中自动化执行;第三,理解其原理后,你能举一反三,处理其他类似的顽固组件。
我们的核心武器是PowerShell,特别是Windows PowerShell(管理员模式)。PowerShell是微软自家的自动化管理和配置框架,其针对应用管理的模块(如AppxPackage)提供了最底层的操作接口。整个移除过程的核心逻辑链是这样的:
- 定位目标:首先,我们需要精确找到“入门”和“Windows备份”在系统内部对应的唯一标识符,即它们的PackageFullName。
- 解除部署:使用PowerShell命令,将目标应用包从当前用户配置文件中“移除”(Remove-AppxPackage),这相当于从你的账户下卸载了它。
- 禁止预装:为了防止系统在下次更新或新建用户账户时自动重新安装,我们需要从系统的“预装应用池”中将其吊销(Remove-AppxProvisionedPackage)。这一步是关键,决定了你的清理是暂时的还是永久的。
- 清理残留:有些应用在删除后,其数据目录可能仍有残留,我们需要手动清理以确保彻底。
对于Windows 10和Windows 11,整体思路一致,但具体的包名(PackageFullName)可能因系统版本和更新而异。因此,我们的操作必须建立在准确查询的基础上,而不是死记硬背某个命令。这也是很多教程只给命令不说原理,导致用户执行失败的根本原因。
3. 详细操作步骤与命令解析
接下来,我们进入实操环节。请务必逐字阅读每个步骤的说明和背后的意图,这比单纯复制命令更重要。
3.1 第一步:以管理员身份启动Windows PowerShell
这是所有操作的前提。在开始菜单搜索“PowerShell”,右键点击“Windows PowerShell”,选择“以管理员身份运行”。一个简单的权限验证,却能避免后续操作中90%的“访问被拒绝”错误。
注意:请确认你打开的是“Windows PowerShell”,而不是“PowerShell 7”或“Windows终端”。虽然新版本兼容大部分命令,但在应用包管理方面,使用系统自带的Windows PowerShell兼容性最有保障。
3.2 第二步:精确查询目标应用的包信息
在动手删除之前,我们必须先知道要删的是什么。运行以下命令来列出所有已安装的应用包:
Get-AppxPackage | Select-Object Name, PackageFullName | Sort-Object Name这条命令会输出一个长长的列表。我们的任务是从中找到“入门”和“Windows备份”对应的条目。
- 寻找“入门”(Getting Started):在列表中寻找名称(Name)包含
GetStarted或Microsoft.GetStarted的条目。在较新的Win11中,它的包名通常类似于Microsoft.GetStarted_10.0.xxxxx.0_x64__8wekyb3d8bbwe。请记下完整的PackageFullName。 - 寻找“Windows备份”(Windows Backup):寻找名称包含
WindowsBackup或MicrosoftWindows.Backup的条目。它的包名可能类似于MicrosoftWindows.Backup_10.0.xxxxx.0_x64__8wekyb3d8bbwe。同样,记下完整的PackageFullName。
为什么必须查询?因为微软在不同版本、不同渠道(零售版、VL批量授权版)的系统镜像中,这些应用的包名版本号(10.0.xxxxx.0)可能会发生变化。直接使用网上的固定命令,很可能因版本不对而删除失败或误删其他应用。
3.3 第三步:从当前用户配置中移除应用
假设我们查询到“入门”的完整包名是Microsoft.GetStarted_10.0.22000.1_x64__8wekyb3d8bbwe。现在,我们将其从当前登录的用户账户下卸载:
Remove-AppxPackage -Package Microsoft.GetStarted_10.0.22000.1_x64__8wekyb3d8bbwe对“Windows备份”执行同样的操作,替换为对应的包名:
Remove-AppxPackage -Package MicrosoftWindows.Backup_10.0.22000.1_x64__8wekyb3d8bbwe执行成功后,你会发现开始菜单中对应的磁贴或条目立刻消失了。但是,这仅仅是对当前用户生效。如果你切换另一个用户登录,或者系统进行了一次重大更新,这些应用很可能“死灰复燃”。因为系统的“预装应用清单”里还有它们。
3.4 第四步:从系统映像中吊销预装包(关键步骤)
这一步是为了告诉系统:“从此以后,不要再给任何用户自动安装这个应用了。” 我们需要在脱机系统映像中操作,这需要用到DISM(部署映像服务和管理)工具,但通过PowerShell的Remove-AppxProvisionedPackage命令可以更方便地调用。
首先,我们需要知道系统的“Windows映像”路径。对于当前正在运行的系统,路径是固定的。执行以下命令吊销“入门”的预装包:
Remove-AppxProvisionedPackage -Online -PackageName Microsoft.GetStarted_10.0.22000.1_x64__8wekyb3d8bbwe同样地,吊销“Windows备份”:
Remove-AppxProvisionedPackage -Online -PackageName MicrosoftWindows.Backup_10.0.22000.1_x64__8wekyb3d8bbwe参数解释:-Online表示对当前在线的操作系统进行操作。-PackageName参数接受的同样是完整的包名。
完成这一步后,即使你新建一个本地用户账户,登录后也不会再看到这两个被移除的应用了。系统更新一般也不会重新安装它们,除非微软在未来的更新中彻底更改了该组件的打包和部署方式。
3.5 第五步:清理用户数据残留(可选但推荐)
有些应用在被移除后,会在用户的AppData目录下留下一些配置或缓存文件。为了做到极致干净,我们可以手动清理。
- 打开文件资源管理器,在地址栏输入
%LOCALAPPDATA%\Packages并回车。 - 在这个文件夹里,寻找名称中包含
GetStarted或WindowsBackup字样的文件夹。它们的名字通常与包名的主体部分对应。 - 确认无误后,将这些文件夹直接删除。
重要提示:在进行此操作前,请确保相关应用已完全关闭。删除这些文件夹会清除该应用的所有本地设置和数据,且不可恢复。对于“入门”这种无重要数据的应用,可以放心删除。
4. Windows 10 与 Windows 11 的差异处理
虽然核心命令相同,但Win10和Win11在细节上需要注意:
- 包名版本差异:Win10 21H2和Win11 22H2下的同款应用,其包名中的版本号字段大概率不同。这就是为什么第二步的查询至关重要,绝不能跨系统照搬包名。
- “入门”应用的存在:“入门”(Getting Started)应用主要存在于Windows 11中,旨在帮助用户从Win10过渡到Win11的新界面。在Windows 10的绝大多数版本中,并没有这个预装应用。所以,Win10用户通常只需要处理“Windows备份”即可。
- 系统内置程度:Win11的“Windows备份”与新的“微软账户”及“Windows备份服务”集成更紧密,但其作为一个独立应用包的本质没有改变,上述移除方法依然有效。
5. 高级技巧与脚本化部署
对于需要批量处理多台电脑的IT管理员,手动操作显然不现实。我们可以将上述步骤编写成一个PowerShell脚本,并解决执行策略问题。
创建一个名为Remove-UnwantedApps.ps1的脚本文件,内容如下:
# Remove-UnwantedApps.ps1 # 以管理员身份运行 Write-Host "正在查询并移除‘入门’和‘Windows备份’应用..." -ForegroundColor Cyan # 定义目标应用名称的关键字 $TargetApps = @("*GetStarted*", "*WindowsBackup*") foreach ($keyword in $TargetApps) { # 1. 查找包 $Package = Get-AppxPackage -Name $keyword if ($Package) { $PackageFullName = $Package.PackageFullName Write-Host "找到应用: $($Package.Name), 包名: $PackageFullName" -ForegroundColor Yellow # 2. 从当前用户移除 try { Remove-AppxPackage -Package $PackageFullName -ErrorAction Stop Write-Host " [成功] 已从当前用户移除。" -ForegroundColor Green } catch { Write-Host " [警告] 从当前用户移除失败: $_" -ForegroundColor Red } # 3. 从系统预装清单中吊销 try { Remove-AppxProvisionedPackage -Online -PackageName $PackageFullName -ErrorAction Stop Write-Host " [成功] 已从系统预装清单中吊销。" -ForegroundColor Green } catch { Write-Host " [警告] 吊销系统预装包失败: $_" -ForegroundColor Red } } else { Write-Host "未找到匹配关键字 '$keyword' 的应用包,可能已移除或不存在于本系统。" -ForegroundColor Gray } Write-Host "---" -ForegroundColor DarkGray } Write-Host "操作完成!建议重启资源管理器或注销后查看效果。" -ForegroundColor Cyan Pause如何使用这个脚本:
- 将上述代码保存为
.ps1文件。 - 在开始菜单搜索“PowerShell ISE”,同样以管理员身份运行它。
- 在ISE中打开这个脚本文件,直接点击运行按钮。
为什么用ISE?因为默认情况下,系统禁止运行未签名的本地脚本。使用ISE可以绕过这个限制。如果要在命令行直接运行脚本,你需要先以管理员身份执行Set-ExecutionPolicy RemoteSigned来更改执行策略(生产环境需谨慎评估此操作的安全影响)。
这个脚本的优点在于它使用了通配符*进行查找,能够适配不同版本的系统,避免了因版本号变化而需要手动修改脚本的问题,自动化程度和容错性更高。
6. 常见问题、排查与恢复方法
即使按照步骤操作,你也可能会遇到一些问题。这里是我总结的常见“坑点”及解决方案。
| 问题现象 | 可能原因 | 排查与解决方案 |
|---|---|---|
执行Remove-AppxPackage时报错“拒绝访问” | 1. PowerShell未以管理员身份运行。 2. 目标应用正在后台运行。 | 1.务必确认窗口标题栏是否有“管理员”字样。 2. 重启电脑,或打开任务管理器,在“后台进程”中找到相关进程(如 GetStarted.exe)并结束它,然后再试。 |
执行Remove-AppxProvisionedPackage时报错“找不到包” | 1. 包名输入错误,特别是版本号。 2. 该应用并非系统预装包,而是用户后期从商店安装的。 | 1. 再次运行Get-AppxPackage仔细核对包名,确保完全一致。2. 对于非预装应用,只需执行 Remove-AppxPackage即可,无需执行吊销步骤。 |
| 应用被移除后,系统更新后又回来了 | 微软在大型功能更新(如从21H2到22H2)中可能会重置系统应用池。 | 这是正常现象。更新后,重新执行一遍移除和吊销操作即可。可以将脚本保存,更新后再次运行。 |
| 误删了其他重要应用怎么办? | 操作时包名识别错误。 | 恢复方法:前往微软官方应用商店(Microsoft Store),搜索被误删的应用名称(如“照片”、“计算器”),通常可以直接点击“安装”恢复。这是系统内置应用最安全的恢复途径。 |
| 脚本运行时报“无法加载文件,因为在此系统上禁止运行脚本” | PowerShell执行策略限制。 | 方案A(临时):在管理员PowerShell中运行:powershell -ExecutionPolicy Bypass -File .\你的脚本.ps1方案B(推荐用于ISE):使用PowerShell ISE打开并运行脚本,如前所述。 |
最后的心得与建议:
- 操作前备份:对于生产环境或非常重要的个人电脑,在进行任何系统级修改前,建议创建一个系统还原点。这样即使操作失误,也能快速回滚。
- 理解大于记忆:不要只记住命令,要理解
Get-AppxPackage(查询用户安装)、Remove-AppxPackage(移除用户安装)、Remove-AppxProvisionedPackage(吊销系统预装)这三条命令各自的作用域和目的。这能让你在面对其他顽固应用时游刃有余。 - 并非所有“Microsoft.”开头的都能删:像
Microsoft.VCLibs(运行库)、Microsoft.NET.Native(框架)这类共享运行时包,是很多其他应用的基础依赖,切勿随意删除,否则可能导致系统不稳定或应用无法运行。我们的目标仅限于那些功能独立、用户交互型的预装应用。 - 对于“Windows备份”:移除它只是移除了图形界面和相关的计划任务触发。系统底层的卷影复制(Volume Shadow Copy)、文件历史记录(如果已设置)等核心备份机制并不会被破坏。你的数据安全策略如果依赖于这些底层服务或第三方软件,完全不受影响。
通过以上这一套组合拳,你不仅能干净利落地解决“入门”和“Windows备份”的问题,更能掌握一套管理Windows现代应用(Appx)的底层方法论。这套方法同样适用于处理其他令人厌烦的预装游戏、新闻应用等,让你真正成为自己电脑系统的管理者,而不是被预装软件支配的用户。