Windows 7 用戶端在啟動時間歇性地無法套用組策略

本文提供 Windows 7 用戶端在啟動時間歇性無法套用組策略的問題解決方案。

適用於: Windows 用戶端 (所有支援的版本)
原始 KB 編號: 2421599

徵狀

Windows 7 用戶端在啟動或重新啟動時,間歇性地無法處理組策略。 系統事件記錄檔中會記錄下列事件:

錯誤 9/9/2010 下午 2:43:29 NETLOGON 5719 錯誤 9/9/2010 2:43:31 PM GroupPolicy 1055

原因

此行為是由網路初始化、尋找域控制器和處理 群組原則 之間的競爭條件所造成。 如果網路無法使用,將找不到域控制器,而且 群組原則 處理將會失敗。 一旦載入作業系統並交涉並建立網路連結,群組原則 的背景重新整理將會成功。

下列事件序列會反映條件:

資訊 <DateTime> EventLog 6006 指出系統關機
資訊 <DateTime> e1kexpress 33 表示您的網路連線連結已建立 <速度/雙工>
資訊 <DateTime> EventLog 6005 指出事件記錄服務已啟動
資訊 <DateTime> Dhcp-Client 50036 指出 dhcp 用戶端服務已啟動
錯誤 <DateTime> NETLOGON 5719 表示 netlogon 無法連線到任何域控制器
錯誤 <DateTime> GroupPolicy 1055 表示組策略處理失敗
資訊 <DateTime> GroupPolicy 1503 指出組策略處理成功

您也可以透過 netlogon 記錄來確認:

<DateTime> [SESSION] \Device\NetBT_Tcpip_{53267BA1-EB8C-4348-BD81-41C3FF162EE9}: 傳輸已新增 (IP 位址>) <<DateTime> [SESSION] Winsock Addrs: <IP 位址> (1) 地址已變更。 <DateTime> [CRITICAL] NetpDcGetDcNext: _ldap._tcp.dc._msdcs.contoso.com.: 無法查詢 DNS。 1460 0x5b4 <DateTime> [CRITICAL] NetpDcGetNameIp: contoso.com.: 沒有從 DnsQuery 傳回的數據。 <DateTime> [CRITICAL] DBG: NlDiscoverDc: 找不到 DC。 <DateTime> [CRITICAL] DBG: NlSessionSetup: Session setup: cannot pick trusted DC <DateTime> [SESSION] DBG: NlSetStatusClientSession: Set connection status to c000005e <DateTime> [SESSION] DBG: NlSessionSetup: Session setup Failed

解決方案

若要解決此問題,您可以設定登錄值來延遲套用 群組原則:

  1. 開啟 [登錄編輯程式]。

  2. 展開下列子機碼: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

  3. 以滑鼠右鍵按兩下 Winlogon,指向 [新增],然後選取 [DWORD 值]

  4. 若要命名新專案,請輸入 GpNetworkStartTimeoutPolicyValue,然後按 ENTER。

  5. 以滑鼠右鍵按兩下 GpNetworkStartTimeoutPolicyValue,然後選取 [ 修改]

  6. 在 [ 基底] 底下,選取 [十進位]

  7. 在 [值數據] 方塊中,輸入 60,然後選取 [ 確定]

  8. 結束登錄 編輯器,然後重新啟動計算機。

  9. 如果 群組原則 啟動文本未執行,請增加登錄專案的GpNetworkStartTimeoutPolicyValue值。

其他相關資訊

指定的值應該夠長,以確保連接已建立。 在逾時期間,Windows 會每隔兩秒檢查一次連線狀態,並在確認連線後立即繼續進行系統啟動。 因此,建議您在高端發生問題。 如果系統合法地中斷連線 (例如,已中斷連線的網路纜線、離線伺服器等) ,Windows 將會停止整個逾時期間。

它也可以透過 群組原則 來定義:

原則位置:計算機>> 設定原則 管理員 範本>系統 > 群組原則 設定名稱:啟動原則處理等候時間登錄機碼:HKLM\Software\Policies\Microsoft\Windows\System!GpNetworkStartTimeoutPolicyValue

如果您定義組策略設定,它會覆寫手動設定。 未定義手動和 群組原則 設定時,會從下列登錄位置挑選值:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History

由於未定義逾時期間,因此系統會使用自己的演算法來計算並到達平均逾時期間。 此值會儲存在上述登錄位置。 它可能會因系統而異,並取決於各種因素,例如先前的登入嘗試。

注意事項

「啟動原則處理等候時間」的 群組原則 描述並不詳細,也不涵蓋所有案例。 因為我們目前未設定原則,並不表示我們將使用預設的逾時值 30 秒。