Windows 安全启动的最低服务需求
Windows 安全启动的最低服务需求
当我们在对 Windows 故障进行排错时通常会使用系统内置的 msconfig 命令执行诊断启动,也就是我们常说的干净启动。在此启动模式下,仅会加载基本的设备和服务,通常可以确保系统能够正常启动进入桌面执行基本任务,便可针对系统缓慢、系统冻结等问题进行排错。
如果诊断启动仍未让系统正常运行,我们还会通过高级启动选项,将系统引导启动至安全模式或带有网络连接的安全模式。自 Windows 10 开始要进入安装模式除了通过 shutdown -o,或者shift + 重启,或者通过 Windows 设置中恢复选项下提供的“高级启动”以外,还可以通过在设备加电启动后长按电源键执行两次强制关机来实现高级启动。这样我们便有机会在无法正常操作系统的前提下进入 Windows 安全模式。在某些极端的情况下,我们可能需要借助 Windows PE 加载脱机系统的注册表对服务进行修改,使其满足安全启动的需求,为此提供以下颇有历史的列表供大家参考:
1. 安全模式
•Cryptographic Services
•Event Log
•Help and Support
•Logical Disk Manager Administrative Service
•Net Logon
•Plug and Play
•Remote Procedure Call (RPC)
•Windows Management Instrumentation
2. 带有网络连接的安全模式
•AFD Networking Support Environment
•Computer Browser
•DHCP Client
•DNS Client
•Event Log
•Help and Support
•Logical Disk Manager
•NetBIOS Interface
•NetBios over Tcpip
•Net Logon
•Network Connections
•Plug and Play
•Remote Procedure Call (RPC)
•Server
•TCP/IP NetBIOS Helper
•TCP/IP Protocol Driver
•Terminal Services
•Windows Management Instrumentation
•Workstation
对于现代操作系统 Windows 11,我们可以进入安全模式检索启动的服务,检索的工具可以是 Services.msc 服务管理器,当然也可以动用一些命令,会更容易生成所需的列表信息,或直接进行排错。
使用 sc query type=service 便可在 cmd 环境下检索当前正在运行的服务,它们便是 Windows 当前版本在安全模式下所需的服务;如果使用driver类型,则会显示安全模式下活动的驱动。对于排错是不是很妙。
如果希望将当前在运行的服务列表直观的显示出来并用于保存,恐怕用 PowerShell 是更方便的。如:
Get-Service | Where-object {$_.status -eq "running"}
末尾感叹一下,自带进入 Windows 10 时代,好像就很少几率在用到安全模式,因为系统已经变得非常稳定、安全!不是吗?!
HOWTO: 使用 Intune CSP 禁用 OOBE 阶段的首次登录动画
HOWTO: 使用 Intune CSP 禁用 OOBE 阶段的首次登录动画
当我们在准备批量自动化部署 Windows 前都会制作参考映像,并对其进行定制,以及预置一些应用程序,或加载一些自动化配置。但在实际部署时会发现 Windows OOBE 的自动化配置过程是实现了,但在“首次运行动画”这个阶段等待了漫长的时间,曾有网友遇到该时间长达近半个小时。
那么我们是否有办法加快或禁用这段动画吗?对于传统部署模式,虽然在 Windows 应答文件中没有预设的配置选项,但是可以通过组策略或脚本进行配置。
1. 组策略,定位到“计算机配置-管理模板-系统-登录”,禁用“显示首次登录动画”。
2. 如果需要在 Windows 应答文件中实现,则需要添加执行脚本,参考如下:
<RunSynchronousCommand wcm:action="add">
<Description>disable FirstLogonAnimation</Description>
<Order>1</Order>
<Path>reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableFirstLogonAnimation /d 0 /t REG_DWORD /f</Path>
</RunSynchronousCommand>
<RunSynchronousCommand wcm:action="add">
<Description>disable animation</Description>
<Order>2</Order>
<Path>reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v DelayedDesktopSwitchTimeout /d 0 /t REG_DWORD /f</Path>
</RunSynchronousCommand>
如果正在使用现代部署模式,如 Intune 这类的 MDM 平台,则可以直接使用 CSP 进行预配。
范围:Device
版本:Pro、Ent、Edu、SE
系统:1903及以上
./Device/Vendor/MSFT/Policy/Config/WindowsLogon/EnableFirstLogonAnimation
格式:int
值:0 -> Disabled
参考信息:
HOWTO: 使用组策略限制设备安装
HOWTO: 使用组策略限制设备安装
从事 Windows 桌面标准化工作的 IT 朋友应该了解,Windows 在设备支持方面的显著特性就是 PnP - 即插即用,系统驱动程序存储区会保存一些常见的设备驱动,当设备连接到系统后,会自动匹配并安装对应的驱动;如果驱动程序存储区没有对应的驱动,则会通过 Internet 向 Windows Update 发送请求获取设备驱动。所以,当我们向系统安装设备驱动程序时,在底层的动作会有两步,驱动会先自动拷贝至存储区,然后在匹配到当前系统实例上(安装驱动)。
OSImage 的编制人员通常会使用 DISM 命令将非系统自带的设备所需驱动注入到 Image,当系统执行 Specialized 阶段时会进行驱动匹配和安装;或者在普通用户连接设备时实现驱动安装。对于最终用户,这是非常友好的,因为用户可以在没有帮助的情况下开始使用设备。但是,这也会对 IT 部门带来挑战,他们可能无法支持各种设备,此外公司也可能会通过阻止用户使用 USB 端口来阻止用户连接 USB 设备。
在 Windows 平台上提供了多个组策略设置,可用于控制设备和设备驱动程序的安装。这使 IT 可以限制特定设备的安装,但允许安装所有其他设备。要学习和使用这些组策略可以打开组策略编辑器并定位到“计算机配置-管理模板-系统-驱动程序安装”:
其中包含两个配置选项:
- 允许非管理员为这些设备设置类安装驱动程序:允许用户安装指定的设备驱动程序。您可以通过检查伴随设备驱动程序的.inf文件来确定适当的驱动程序设置类。
- 关闭Windows Update设备驱动程序搜索提示:确定管理员在设备安装期间是否收到提示以搜索Windows Update驱动程序。
要控制设备安装限制的组策略设置,可定位到“计算机配置-管理模板-系统-设备安装-设备安装限制”。
其中包含:
- 允许管理员覆盖设备安装限制策略:允许管理员组的成员安装或更新设备的驱动程序,而不管策略设置如何。
- 允许使用与这些设备设置类匹配的驱动程序来安装设备:允许安装与指定的设置类全局唯一标识符(GUID)相匹配的设备。
- 使用与这些设备设置类匹配的驱动程序防止安装设备:防止安装与指定的设置类GUID匹配的设备。
- 当策略设置阻止安装时显示自定义消息:允许管理员定义当策略设置阻止设备安装时显示的自定义消息。
- 当策略设置阻止设备安装时显示自定义消息标题:允许管理员定义自定义消息标题,当策略设置阻止设备安装时显示。
- 允许安装匹配任何这些设备标识符的设备:允许安装与您指定的设备标识符匹配的设备。
- 防止安装符合任何这些设备标识符的设备:阻止安装与您指定的设备标识匹配的设备。
- 时间(以秒为单位)在策略更改生效时强制重新启动:允许您定义设备安装后计算机等待重新启动的时间。
- 防止安装可移动设备:允许您阻止用户安装可移动设备。
- 防止其他策略设置未描述的设备安装:允许您确保用户无法安装任何驱动程序,即使没有限制安装的策略。