Windows 7 客户端在启动时间歇性地无法应用组策略
09/08/2020
本文内容
本文提供了一个解决方案,可解决 Windows 7 客户端在启动时间歇性地无法应用组策略的问题。
适用于: Windows 7 Service Pack 1
原始 KB 编号: 2421599
症状
Windows 7 个客户端在启动时或重新启动时间歇性地未能进行组策略处理。 以下事件记录在系统事件日志中:
错误 9/9/2010 2:43:29 PM NETLOGON 5719 错误 9/9/2010 2:43:31 PM GroupPolicy 1055
原因
此行为由网络初始化、定位域控制器和处理组策略之间的竞争条件导致。 如果网络不可用,将找不到域控制器,组策略处理将失败。 加载操作系统并协商建立网络链接后,组策略的后台刷新将成功。
以下事件序列反映了这种情况:
信息 事件日志 6006 指示系统关闭
信息 e1kexpress 33 指示已建立网络连接链接
信息 事件日志 6005 指示事件日志服务已启动
信息 Dhcp-Client 50036 指示 dhcp 客户端服务已启动
错误 NETLOGON 5719 指示 netlogon 无法访问任何域控制器
错误 GroupPolicy 1055 指示组策略处理失败
信息 组策略 1503 指示组策略处理成功
也可通过日志 netlogon 进行确认:
[SESSION] \Device\NetBT_Tcpip_{53267BA1-EB8C-4348-BD81-41C3FF162EE9}:Transport Added () [SESSION] Winsock Addrs: (1) Address changed. [CRITICAL]NetpDcGetDcNext:_ldap._tcp.dc._msdcs.contoso.com.:无法查询 DNS。 1460 0x5b4 [CRITICAL] NetpDcGetNameIp: contoso.com .: 没有从 DnsQuery 返回的数据。 [CRITICAL]DBG:NlDiscoverDc:找不到 DC。 [CRITICAL]DBG:NlSessionSetup:会话设置:无法选取受信任的 DC [SESSION] DBG:NlSetStatusClientSession:将连接状态设置为 c000005e [SESSION] DBG:NlSessionSetup:会话设置失败
解决方案
若要解决此问题,可以设置注册表值来延迟组策略的应用:
打开注册表编辑器。
展开以下子项: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
右键单击 Winlogon ,指向 新建,然后选择 DWORD 值。
若要命名新条目,请键入 GpNetworkStartTimeoutPolicyValue ,然后按 Enter。
右键单击 GpNetworkStartTimeoutPolicyValue ,然后选择修改。
在”基本” 下,选择”十进制”。
在”值数据”框中,键入 60, 然后选择”确定 “。
退出注册表编辑器,然后重新启动计算机。
如果组策略启动脚本未运行,请增加 GpNetworkStartTimeoutPolicyValue 注册表项的值。
详细信息
指定的值应足够长,以确保已建立连接。 在超时期间,Windows将每两秒检查一次连接状态,一旦确认连接,系统将继续启动。 因此,建议在较高端进行错误。 如果系统已合法断开连接 (例如,断开的网络电缆、断开的线路服务器等) ,Windows将在整个超时时间内停止。
它还可以通过组策略进行定义:
策略位置:计算机配置>策略>管理模板> System > 组策略设置名称:启动策略处理等待时间注册表项: HKLM\Software\Policies\Microsoft\Windows\System!GpNetworkStartTimeoutPolicyValue
如果定义组策略设置,它将覆盖手动设置。 未定义手动和组策略设置时,会从以下注册表位置选取值:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History
由于未定义任何时间段,因此系统使用自己的算法来计算并到达平均退出时段。 此值存储在上述注册表位置。 它可能会因系统而异,并且取决于各种因素,例如以前的登录尝试。
备注
“启动策略处理等待时间”的组策略说明并不详细,并未涵盖所有方案。 因为我们当前未配置策略,但这并不意味着我们将使用默认 30 秒的退出值。