dfsrmig

适用范围:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows Server 2012 R2、Windows Server 2012

DFS 复制服务的迁移工具 dfsrmig.exe 随 DFS 复制服务一起安装。 此工具将 SYSvol 复制从文件复制服务 (FRS) 迁移到分布式文件系统 (DFS) 复制。 它还提供有关迁移进度的信息,并修改 Active Directory 域服务 (AD DS) 对象以支持迁移。

语法

dfsrmig [/setglobalstate <state> | /getglobalstate | /getmigrationstate | /createglobalobjects |
/deleterontfrsmember [<read_only_domain_controller_name>] | /deleterodfsrmember [<read_only_domain_controller_name>] | /?]

参数

参数 说明
/setglobalstate <state> 将域的全局迁移状态设置为与 state 指定的值对应的状态。 只能将全局迁移状态设置为稳定状态。 state 值包括:
  • 0 - “开始”状态
  • 1 - “已准备”状态
  • 2 - “已重定向”状态
  • 3 - “已消除”状态
/getglobalstate 在 PDC 模拟器上运行时,从 AD DS 数据库的本地副本中检索域的当前全局迁移状态。 使用此选项可确认设置了正确的全局迁移状态。

重要事项:只能在 PDC 模拟器上运行此命令。

/getmigrationstate 检索域中所有域控制器的当前本地迁移状态,并确定这些本地状态是否与当前全局迁移状态匹配。 使用此选项可确定是否所有域控制器都已达到全局迁移状态。
/createglobalobjects 在 DFS 复制使用的 AD DS 中创建全局对象和设置。 只有在以下情况下,才能使用此选项手动创建对象和设置:
  • 在迁移过程中,会提升新的只读域控制器。 如果在进入“已准备”状态后但在迁移到“已消除”状态之前在域中提升了新的只读域控制器,则不会创建与新域控制器对应的对象,从而导致复制和迁移失败。
  • DFS 复制服务的全局设置丢失或已删除。 如果域控制器缺少这些设置,则从“开始”状态到“准备”状态的迁移将在“正在准备”转换状态时停止。 注意:由于只读域控制器的 DFS 复制服务的全局 AD DS 设置是在 PDC 模拟器上创建的,因此这些设置需要从 PDC 模拟器复制到只读域控制器,然后只读域控制器上的 DFS 复制服务才能使用这些设置。 由于 Active Directory 复制延迟,这种复制可能需要一些时间才能进行。
/deleterontfrsmember [<read_only_domain_controller_name>] 删除与指定的只读域控制器对应的 FRS 复制的全局 AD DS 设置,如果未指定 <read_only_domain_controller_name> 的值,则删除所有只读域控制器的 FRS 复制的全局 AD DS 设置。

在正常迁移过程中不需要使用此选项,因为 DFS 复制服务会在从“重定向”状态迁移到“已消除”状态期间自动删除这些 AD DS 设置。 只有在以下情况下才应使用此选项手动删除 AD DS 设置:只读域控制器上的自动删除失,并且在从“已重定向”状态迁移到“已消除”状态期间使只读域控制器长时间停滞。

/deleterodfsrmember [<read_only_domain_controller_name>] 删除与指定的只读域控制器对应的 DFS 复制的全局 AD DS 设置,或者如果未指定 <read_only_domain_controller_name> 的值,则删除所有只读域控制器的 DFS 复制的全局 AD DS 设置。

只有在以下情况下才应使用此选项手动删除 AD DS 设置:只读域控制器上的自动删除失败,并且在将迁移从“已准备好”状态回滚到“开始”状态时长时间停止只读域控制器。

/? 在命令提示符下显示帮助。

备注

  • 使用 /setglobalstate <state> 命令在 PDC 模拟器上的 AD DS 中设置全局迁移状态,以启动和控制迁移过程。 如果 PDC 模拟器不可用,此命令将失败。

  • 迁移到“已消除”状态是不可逆的,并且无法回滚,因此仅当完全承诺使用 DFS 复制进行 SYSvol 复制时,才应使用值 3 作为状态。

  • 全局迁移状态必须是稳定的迁移状态。

  • Active Directory 复制将全局状态复制到域中的其他域控制器,但由于复制延迟,如果在 PDC 仿真器以外的域控制器上运行 dfsrmig /getglobalstate,则可能会出现不一致的情况。

  • dfsrmig /getmigrationstate 的输出指示到当前全局状态的迁移是否已完成,列出尚未达到当前全局迁移状态的任何域控制器的本地迁移状态。 域控制器的本地迁移状态还可以包括尚未达到当前全局迁移状态的域控制器的转换状态。

  • 只读域控制器无法从 AD DS 中删除设置,由 PDC 模拟器执行此操作,并且在 Active Directory 复制的适用延迟之后,更改最终会复制到只读域控制器。

  • 只有在 Windows Server 域功能级别运行的域控制器上才支持 dfsrmig 命令,因为有以该级别运行的域控制器上才能实现从 FRS 到 DFS 复制的 SYSvol 迁移。

  • 可以在任何域控制器上运行 dfsrmig 命令,但只有在具有读写功能的域控制器(而不是只读域控制器)上允许创建或操作 AD DS 对象的操作。

示例

要将全局迁移状态设置为“已准备”(1),并启动迁移或从“已准备”状态回滚,请键入:

dfsrmig /setglobalstate 1

若要将全局迁移状态设置为“开始”(0) 并启动回滚到“启动”状态,请键入:

dfsrmig /setglobalstate 0

若要显示全局迁移状态,请键入:

dfsrmig /getglobalstate

dfsrmig /getglobalstate 命令的输出:

Current DFSR global state: Prepared
Succeeded.

若要显示有关所有域控制器上的本地迁移状态是否与全局迁移状态匹配以及是否存在本地状态与全局状态不匹配的任何本地迁移状态的信息,请键入:

dfsrmig /GetMigrationState

当所有域控制器上的本地迁移状态与全局迁移状态匹配时,dfsrmig /getmigrationstate 命令的输出:

All Domain Controllers have migrated successfully to Global state (Prepared).
Migration has reached a consistent state on all Domain Controllers.
Succeeded.

当某些域控制器上的本地迁移状态与全局迁移状态不匹配时,dfsrmig /getmigrationstate 命令的输出。

The following Domain Controllers are not in sync with Global state (Prepared):
Domain Controller (Local Migration State) DC type
=========
CONTOSO-DC2 (start) ReadOnly DC
CONTOSO-DC3 (Preparing) Writable DC
Migration has not yet reached a consistent state on all domain controllers
State information might be stale due to AD latency.

若要创建 DFS 复制在域控制器上的 AD DS 中使用的全局对象和设置(假设在迁移期间未自动创建这些设置或缺少这些设置),请键入:

dfsrmig /createglobalobjects

若要删除名为 contoso-dc2 的只读域控制器的 FRS 复制的全局 AD DS 设置(假设迁移过程未自动删除这些设置),请键入:

dfsrmig /deleterontfrsmember contoso-dc2

若要删除所有只读域控制器的 FRS 复制的全局 AD DS 设置(假设迁移过程未自动删除这些设置),请键入:

dfsrmig /deleterontfrsmember

若要删除名为 contoso-dc2 的只读域控制器的 DFS 复制的全局 AD DS 设置(假设迁移过程未自动删除这些设置),请键入:

dfsrmig /deleterodfsrmember contoso-dc2

若要删除所有只读域控制器的 DFS 复制的全局 AD DS 设置(假设迁移过程未自动删除这些设置),请键入:

dfsrmig /deleterodfsrmember

在命令提示符下显示帮助:

dfsrmig
dfsrmig /?