最稳妥方式是通过服务器管理器或PowerShell卸载角色:先确认使用状态、依赖关系及影响,再执行卸载;服务器管理器图形化操作直观,PowerShell支持批量、静默及预览(-WhatIf)卸载,域控制器须先降级再卸载AD DS。
直接通过服务器管理器或 powershell 卸载不需要的服务器角色,是最稳妥、最推荐的方式。关键不是“删掉就完事”,而是先确认角色是否正在被使用、是否有依赖服务、是否影响其他功能,再执行卸载操作。
用服务器管理器图形界面卸载角色
这是最直观的方法,适合大多数管理员:
- 打开服务器管理器(开始菜单或任务栏快捷方式)
- 点击顶部菜单栏的“管理” → “删除角色和功能”
- 在向导中依次点击“下一步”,直到进入“删除服务器角色”页面
- 取消勾选你确定不再需要的角色(如:Web 服务器(IIS)、DHCP 服务器、DNS 服务器等),注意系统会自动提示关联的角色服务和依赖项
- 继续点“下一步”,在“确认删除选择”页仔细核对列表,确认无误后点击“删除”
- 等待进度完成,部分角色卸载后需重启服务器(向导会明确提示)
用 PowerShell 批量或静默卸载角色
适合脚本化操作、远程管理或无人值守场景:
- 以管理员身份运行 PowerShell
- 查看当前已安装的角色:
Get-WindowsFeature | Where-Object Installed | Format-Table Name, DisplayName -AutoSize - 卸载单个角色(例如 DNS Server):
Uninstall-WindowsFeature -Name DNS -IncludeManagementTools -Restart
加 -Restart 表示自动重启(若需要),加 -IncludeManagementTools 会一并移除配套管理工具 - 批量卸载多个角色(如同时删掉 IIS 和 FTP):
Uninstall-WindowsFeature -Name Web-Server, Web-Ftp-Server -IncludeManagementTools -Restart - 如不确定是否影响业务,可先加 -WhatIf 参数预览效果,不实际执行
卸载前必须注意的几个关键点
跳过这些检查,容易导致服务中断或卸载失败(比如报错 0x800f0922):
- 不要卸载 AD DS 角色时直接用 DISM 或 Uninstall-WindowsFeature——域控制器必须先降级(demote),否则系统可能无法启动。应使用 Uninstall-ADDSDomainController cmdlet 或服务器管理器中的降级流程
- 某些角色(如 WDS、CA)卸载失败常因后台服务仍在运行,建议提前在【服务】管理器中手动停止对应服务(如 WDSServer、CertSvc)
- 如果角色关联了已配置的功能(如 DNS 区域、DHCP 作用域),卸载会保留这些配置数据,但服务停用后它们将不可用;如需彻底清理,应在卸载前导出或迁移
- 卸载完成后,可运行 DISM /Online /Cleanup-Image /StartComponentCleanup 清理系统组件存储,释放少量空间
卸载后建议做的收尾动作
释放资源不只是删角色,还包括清理残留和验证状态:
- 检查 Windows 日志(事件查看器 → Windows 日志 → 系统)中是否有 CBS 或 Service Control Manager 相关错误
- 运行 sfc /scannow 确保系统文件完整性未受损
- 如曾为该角色开放过防火墙端口,记得在“高级安全 Windows 防火墙”中删除对应入站规则
- 若该角色曾被其他应用依赖(如某监控工具调用 WMI 获取 IIS 状态),需同步更新应用配置


















