关于 DFS 命名空间服务及其配置数据

本文提供有关 DFS 命名空间服务及其配置数据的一些信息。

原始 KB 数: 977511

总结

分布式文件系统 (DFS) 命名空间服务将配置数据存储在多个位置。 如果某些数据缺失或无法访问,可能会遇到故障,并且无法创建命名空间。

简介

本文讨论以下主题,帮助你创建命名空间:

  • 配置数据的存储位置。
  • 数据如何变得不一致的示例。
  • 可用于删除孤立配置数据的方法。
  • 你可能会收到的症状和错误消息。

详细信息

DFS 命名空间配置存储位置

以下位置存储分布式文件系统(DFS)命名空间的不同配置数据:

  • Active Directory 域服务(AD DS)将基于域的命名空间配置数据存储在一个或多个对象中,这些对象包含命名空间服务器名称、文件夹目标和其他各种配置数据。

  • 命名空间服务器维护托管的每个命名空间的共享。

  • 基于域的命名空间服务器上的注册表项存储命名空间成员身份。

    注意

    在独立命名空间服务器上,注册表项存储所有命名空间配置数据。

如果配置数据的任何子集缺失或无效,则可能无法管理命名空间。 此外,使用 DFS 命名空间Microsoft管理控制台(MMC)管理单元、Dfsutil.exe工具、Dfscmd.exe工具或客户端访问命名空间时,可能会收到许多不同的错误消息。 有关可能的错误消息列表,请参阅“症状和错误消息”部分。

DFS 命名空间配置数据可能变得不一致的示例

  • dfsutil/clean 命令在基于域的命名空间服务器上执行。 此命令删除命名空间注册表数据。 存储在 AD DS 中的配置数据将保持不变,并由 DFS 命名空间 MMC 管理单元枚举。
  • 执行 AD DS 的权威还原,以恢复使用 DFS 管理工具(例如 DFS 命名空间 MMC 管理单元或Dfsutil.exe工具)删除的 DFS 命名空间。 尽管 AD DS 还原可能成功,但除非还原或恢复其他 DFS 命名空间配置数据,否则命名空间无法正常运行。
  • 通过使用在服务器成为命名空间服务器之前创建的备份来还原命名空间服务器的系统状态。
  • Active Directory 复制失败会阻止命名空间服务器查找 DFS 命名空间配置数据。
  • 在命名空间服务器上修改或删除命名空间的共享不正确。
  • 手动操作注册表或 AD DS 命名空间配置数据。

DFS 命名空间配置清理和删除

DFS 命名空间配置数据由使用 DFS API 的管理工具管理和维护。 DFS API 通知 Active Directory 域控制器和 DFS 命名空间服务器有关配置更改的信息。 此行为可防止配置数据成为孤立数据,并保证配置数据的一致性。 如果通知过程被禁止,或者如果数据被删除或丢失,请按照此处列出的清理步骤删除配置数据。 除非为域控制器或命名空间服务器备份系统状态,否则这些更改不可恢复。

有关如何备份运行 Windows Server 2003 的服务器的系统状态的详细信息,请访问以下Microsoft网站:

https://technet.microsoft.com/library/cc759141.aspx
有关如何备份运行 Windows Server 2008 的服务器的系统状态的详细信息,请访问以下Microsoft网站:

https://technet.microsoft.com/library/cc770266.aspx

注意

仅当无法恢复配置数据或不需要时,才应使用以下步骤。

有关 DFS 命名空间的恢复过程的详细信息,请单击以下文章编号以查看Microsoft知识库中的文章:

969382 Windows 2003 和 2008 Server 中 DFS 命名空间的恢复过程

  1. 对于基于域的 DFS 命名空间,请验证删除 AD DS 命名空间配置数据。 在删除过程之前,必须准确识别与故障或不一致的命名空间关联的对象。 若要删除 AD DS 命名空间配置数据,请执行以下步骤:

    1. 打开 Adsiedit.msc 工具。 此工具包含在 Windows Server 2008 中,并要求安装 AD DS 角色或工具。 此工具在 Windows Server 2003 支持工具中可用。

      有关 Adsiedit.msc 工具的详细信息,请访问以下Microsoft网站:

      https://technet.microsoft.com/library/cc773354(WS.10).aspx

    2. 找到托管基于域的命名空间的域的域分区。 移动到以下位置:
      CN=Dfs-Configuration,CN=System,DC= <域 DN>

      注意

      <域 DN> 占位符是域的可分辨名称。

      DFS 命名空间将配置对象存储在此位置。 “Windows 2000 服务器模式”命名空间具有与命名空间相同的“fTDfs”类对象。 “Windows Server 2008 模式”命名空间具有一个与关联命名空间相同的“msDFS-NamespaceAnchor”类对象,该对象可能包含任何已配置文件夹的其他子对象。

    3. 选择相应的对象,例如“fTDfs”或“msDFS-NamespaceAnchor”对象,然后将其与任何子对象一起删除。

      注意

      Active Directory 复制延迟可能会延迟此更改操作,从传播到远程域控制器。

  2. 在托管命名空间的任何命名空间服务器上,验证是否删除 DFS 命名空间注册表配置数据。 如果服务器上托管了其他正常运行的命名空间,请确保仅删除不一致的命名空间的注册表项。 若要删除 DFS 命名空间注册表配置数据,请执行以下步骤:

    1. 在注册表编辑器中,使用以下路径之一找到命名空间的配置注册表项:

      “Windows Server 2008 模式”中基于域的 DFSN
      HKEY_LOCAL_MACHINE \Software\Microsoft\Dfs\Root\domainV2
      独立 DFSN
      HKEY_LOCAL_MACHINE \Software\Microsoft\Dfs\Root\Standalone
      “Windows 2000 服务器模式”中基于域的 DFSN
      HKEY_LOCAL_MACHINE\Software\Microsoft\Dfs\Root\Domain

    2. 如果找到与不一致的命名空间相同的注册表项,请使用Dfsutil.exe工具来删除注册表项。 例如,运行以下命令:

      dfsutil /clean /server:<servername> /share:<sharename> /verbose
      

      注意

      servername 占位符是托管命名空间的服务器的名称,sharename 占位符是根共享的名称。 或者手动删除密钥。

    3. 在命名空间服务器上,重启 Windows Server 2003 中的 DFS 服务或 Windows Server 2008 中的 DFS 命名空间服务,以在服务上注册更改。

  3. 从命名空间服务器中删除与命名空间关联的文件共享。 未能执行此步骤可能会导致命名空间的重新创建失败,因为 DFS 命名空间可能会阻止命名空间创建。

    Windows Server 2003

    1. 打开计算机管理 MMC 管理单元。 为此,请运行 Compmgmt.msc 工具。
    2. 展开 系统工具,展开 共享文件夹,然后单击“ 共享”。
    3. 右键单击 DFS 命名空间共享,然后单击“ 停止共享”。 如果收到以下错误消息,则必须重启服务器,然后重试以使用计算机管理 MMC 管理单元删除共享:

      “系统无法停止共享 <\server\share> ,因为共享文件夹是分布式文件系统 (DFS) 命名空间根目录”

    Windows Server 2008

    1. 打开“共享和存储管理”MMC 管理单元。 为此,请运行 StorageMgmt.msc 工具。
    2. 右键单击命名空间的共享,然后单击“ 停止共享”。 如果收到以下错误消息,则必须重启服务器,然后使用计算机管理 MMC 管理单元删除共享:

      系统无法停止共享 <\server\share> ,因为共享文件夹是分布式文件系统 (DFS) 命名空间根

只有在评估所有其他恢复选项后,才应考虑更改 DFS 命名空间配置数据。 建议定期为 DFS 命名空间服务器和基于域的 DFS 命名空间的域控制器获取系统状态的备份。 这些备份可用于将命名空间配置还原到完整操作,而不会有不一致的 DFS 命名空间配置数据的风险。

症状和错误消息

DFS 管理 MMC (Dfsmgmt.msc)

在 Dfsmgmt.msc 工具中,可能会收到以下错误消息:

  • \\domain.com\namespace:无法查询命名空间。 找不到元素。

  • 指定的服务器已承载具有此名称的命名空间。 请选择另一个命名空间名称或另一台服务器来托管命名空间。

  • 服务器 <服务器名称>上已存在共享文件夹名称“namespace”。 如果使用现有的共享文件夹,则“编辑设置”对话框中指定的安全设置将不适用。 若要使用这些设置创建共享文件夹,必须先删除现有的共享文件夹。

  • 命名空间在创建命名空间服务器的域中并不唯一。 必须返回以选择新的命名空间名称,或将命名空间类型更改为独立命名空间。

  • \\ domain.com \ namespace1:无法添加命名空间服务器 \ servername \ namespace1。 在文件已存在时无法创建该文件。

  • \\domain.com\namespace:无法查询命名空间。 系统找不到指定的文件。

  • \\domain.com\namespace:无法查询命名空间。 设备尚不可用。

  • 尝试删除共享 <命名空间文件夹>时出错。 必须先从分布式文件系统中删除共享,然后才能将其删除。

分布式文件系统 MMC (Dfsgui.msc)

在 Dfsgui.msc 工具中,可能会收到以下错误消息:

  • 指定的 DFS 根不存在。

  • DFS 根“namespace1”已存在。 请为新的 DFS 根提供其他名称。

  • 在服务器服务器名称上创建 DFS 根目录时发生以下错误:如果该文件已存在,则无法创建文件。

  • 指定的 DFS 根不存在。

  • 系统找不到指定的文件。

Dfsutil.exe

在Dfsutil.exe工具中,可能会收到以下错误消息:

  • 系统错误 1168 已发生。 找不到元素。

Dfscmd.exe

在Dfscmd.exe工具中,可能会收到以下错误消息:

  • 系统错误 1168 已发生。 找不到元素。

  • 系统错误 80 已发生。 文件已存在。

  • 系统错误 2 已发生。 系统找不到指定的文件。

DFS 客户端

在运行 DFS 客户端的计算机上,可能会收到以下错误消息:

  • Windows 找不到“\\domain.comnamespace\folder”。 请确保正确键入了名称,然后重试。

  • 找不到文件。

  • Windows 无法访问“\\domain.comnamespace\folder”。 检查名称的拼写。 否则,网络可能存在问题。
    其他详细信息:
    错误代码:0x80070002系统找不到指定的文件。

  • Windows 无法访问 \\\domain.comnamespace1。 0x80070035找不到网络路径的错误代码。

  • \\domain.com\namespace\folder 不可访问。 你可能没有使用此网络资源的权限。 。 找不到网络路径。

  • 由于计算机不可用或访问被拒绝,无法从域控制器读取配置信息。

  • Windows 无法访问 \\domain.com\namespace。 检查名称的拼写。 否则,网络可能存在问题。 其他详细信息:
    错误代码:0x80070035找不到网络路径。

  • 系统找不到指定的路径。