组策略:无法加载映射驱动器、Windows Server 2012 Active Directory 和 Windows Pro 10

Dan*_*iel 12 mappeddrive group-policy windows-server-2012-r2 windows-10

网络:

  • 多站点域。
  • 每个站点都有 2 个本地(现场、相同子网)Windows Server 2012 R2 域控制器。
  • 在 Windows 站点和服务中正确定义了站点。
  • 每个站点的 DNS 记录仅定义了两个本地 DNS 服务器。
  • 所有客户端都是带有所有更新的 Windows 10 Pro 64 位。
  • 两个网络都在 Cisco 交换机上运行完全千兆,并具有经过认证的 CAT6 布线。
  • 每个站点都有一个本地(现场、相同子网)Synology 存储服务器。
  • 作为组策略的一部分,两个网络驱动器映射到 Synology 服务器上的共享。

连接诊断:

  • dcdiag /test:dns /v /c /ePASS所有服务器和所有测试的报告
  • echo %logonserver% 总是返回本地 DC
  • nltest /dsgetdc 始终显示本地 DC 和正确的本地 IP
  • 在站点 A 上,两个网络驱动器都出现了,可能有 0.5% 的失败几率(我经历过几次启动时驱动器没有正确显示的情况)。

问题:

在站点 B,网络驱动器可能有 30% 的时间无法显示。有时它是两个驱动器,有时它是一个或另一个。问题大多是随机的,似乎没有跟随任何特定用户或工作站。

症状:

在出现问题的 30%的时间中:

  • 5% 的时间 a gpupdateorgpupdate /force将解决问题,驱动器将立即出现。如果gpupdate在第一次尝试时不起作用,那么在那之后它几乎永远不会工作(对于那次启动)
  • 5% 的时间 a gpupdateorgpupdate /force会导致只出现一个驱动器
  • 20% 的情况下,agpupdate不会解决问题,但下次启动会没事
  • 50% 的情况下,agpupdate不会解决问题,但是在一次启动和 一次启动后gpupdate,驱动器会出现
  • 20% 的情况下,在驱动器出现之前需要多次重新启动(以及gpupdate每次启动)。有时它是 2 次启动,但在驱动器出现之前,我不得不重新启动计算机有时 6 或 7 次。

    • 在这最后 20% 的时间里,我有时会从 gpupdate 过程中得到错误。

      The processing of Group Policy failed. Windows attempted to read the file 
      \domain\SysVol\domain.local\Policies{5898270F-33D0-41E8-A516-56B3E6D2DBAB}\gpt.ini 
      from a domain controller and was not successful. Group Policy settings may not be 
      applied until this event is resolved. This issue may be transient and could be 
      caused by one or more of the following:  
      
      a) Name Resolution/Network Connectivity to the current domain controller.  
      b) File Replication Service Latency (a file created on another domain controller 
         has not replicated to the current domain controller).  
      c) The Distributed File System (DFS) client has been disabled.
      
      Run Code Online (Sandbox Code Playgroud)
    • 这个错误实际上通常但并非总是一个兆头,因为通常在我收到此错误后,下一次“gpupdate”或下一次启动和“gpupdate”将使驱动器重新出现。

驱动器映射诊断:

  1. gpresult /h gpresult.html 显示:

    Drive Map (Drive: X)
     The following settings have applied to this object. Within this category, settings nearest the top of the report are the prevailing settings when resolving conflicts.
       X:
        Winning GPO  DriveMaps 
         General Settings
          Result: Success
    
    Run Code Online (Sandbox Code Playgroud)
  2. 我已启用组策略环境调试日志记录(根据 http://social.technet.microsoft.com/wiki/contents/articles/4506.group-policy-debug-log-settings.aspx创建的注册表项[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Diagnostics] "GPSvcDebugLevel"=dword:00030002)。中的日志文件c:\Windows\debug\UserMode\gpsvc.log没有向我显示任何明确的错误,我也无法通过谷歌找到太多帮助。以下是我收到的一些有趣的消息:

    GPSVC(158.33c) 23:33:24:921 CheckGPOs: No GPO changes but extension Group Policy Drive Maps's returned error status 183 earlier.  
    GPSVC(158.c24) 23:38:12:203 ProcessGPOs(Machine): Extension Group Policy Drive Maps skipped with flags 0x110057. 
    GPSVC(158.157c) 23:08:08:216 ProcessGPOs(User): Extension Group Policy Drive Maps ProcessGroupPolicy failed, status 0xb7.
    
    Run Code Online (Sandbox Code Playgroud)
  3. 我已经为 Drive Maps 启用了组策略首选项调试(根据http://blogs.technet.com/b/askds/archive/2008/07/18/enabling-group-policy-preferences-debug-logging-using-the -rsat.aspx设置Drive Map Policy ProcessingEnabledEvent Logging在 ) 的属性中打开\Computer Configuration\Policies\Administrative Templates\System\Group Policy\Logging and tracing。日志文件中C:\ProgramData\GroupPolicy\Preference\Trace\User.log没有返回任何错误。

    2015-11-21 17:47:38.849 [pid=0x22c,tid=0xcd0] Starting class <Drive> - X:.
    2015-11-21 17:47:38.864 [pid=0x22c,tid=0xcd0] Adding child elements to RSOP.
    2015-11-21 17:47:38.880 [pid=0x22c,tid=0xcd0] Beginning drive mapping.
    2015-11-21 17:47:38.896 [pid=0x22c,tid=0xcd0] Set user security context.
    2015-11-21 17:47:38.927 [pid=0x22c,tid=0xcd0] User does not have a split token.
    2015-11-21 17:47:38.927 [pid=0x22c,tid=0xcd0] Drive doesn't exist (full token).
    2015-11-21 17:47:39.114 [pid=0x22c,tid=0xcd0] Connected with access name x:.
    2015-11-21 17:47:39.146 [pid=0x22c,tid=0xcd0] SendNotification Session ID is 2.
    2015-11-21 17:47:39.146 [pid=0x22c,tid=0xcd0] SendNotification discovered drive mask of 8388608.
    2015-11-21 17:47:39.161 [pid=0x22c,tid=0xcd0] Set system security context.
    2015-11-21 17:47:39.161 [pid=0x22c,tid=0xcd0] SendNotification drive event broadcast sent.
    2015-11-21 17:47:39.161 [pid=0x22c,tid=0xcd0] Set user security context.
    2015-11-21 17:47:39.177 [pid=0x22c,tid=0xcd0] SendNotification to Shell.
    2015-11-21 17:47:39.177 [pid=0x22c,tid=0xcd0] Set system security context.
    2015-11-21 17:47:39.177 [pid=0x22c,tid=0xcd0] Properties handled.
    2015-11-21 17:47:39.177 [pid=0x22c,tid=0xcd0] Handle Children.
    2015-11-21 17:47:39.192 [pid=0x22c,tid=0xcd0] EVENT : The element of user preferences 'X:' of the group policy object 'DriveMaps {06FEB8B9-632C-4A1C-A7C9-5A05E1041BEE}' was applied correctly.
    2015-11-21 17:47:39.192 [pid=0x22c,tid=0xcd0] Completed class <Drive> - X:.
    
    Run Code Online (Sandbox Code Playgroud)
  4. 我也有几个 netmon 捕获的驱动器无法加载的登录信息,但是捕获的信息太多我不知道从哪里开始。

  5. 如果在登录失败后尝试直接浏览到\\SynologyServer\ShareName\,则共享始终会立即加载而不会出现任何错误。没有任何连接或权限问题的迹象。

题:

为什么这个问题在一个站点发生得如此频繁,而在另一个站点几乎不会发生,因为它们都在同一个域中,具有相同的策略,并且运行相同的软件?

我能想到的唯一软件差异是,在站点 A,所有计算机都运行 Windows 8.1 专业版并升级到 Windows 10 专业版,而在站点 B,所有计算机都全新安装了 Windows 10 专业版。

Dan*_*iel 1

我只是想更新一下,并说在某个时候,Windows 10 的一个主要更新修复了这个问题。这是一个老问题,但我不喜欢把事情悬而未决,以防万一。