关于将FSMO角色转回原故障域控制器的技术咨询
关于将FSMO角色转回原故障域控制器的技术咨询
首先,咱们先把你的场景理清楚:原域控制器故障下线,你在新DC上执行了FSMO角色抢占(seize),但新DC因为无法连接原DC,导致AD复制未完成;现在原DC意外恢复上线,你想把FSMO角色转回原DC。针对这个问题,给你分点说明:
核心结论先给你
直接抢占(seize)角色回原DC是绝对不建议的,而正常转移(transfer)角色也需要先解决复制同步的问题,不能直接操作。
具体分析和操作建议
为什么不能直接抢占角色回原DC?
抢占FSMO角色的前提是当前角色持有者(也就是你的新DC)已经彻底不可用。但现在新DC是正常运行的,只是复制未完成。如果强行把角色抢占回原DC,会导致AD域中出现元数据冲突——原DC离线期间,域内的AD变更(哪怕是新DC上的部分变更)没有同步到它,它的AD数据是旧的,抢占后它作为角色持有者,会用旧数据覆盖或干扰整个域的正常运行,后续会引发大量复制错误、用户登录异常、组策略失效等问题。正常转移角色的前提条件
要安全地把FSMO角色转移回原DC,必须先满足:- 确保新DC和原DC之间的AD复制完全正常,没有报错。现在原DC已经上线,你可以先检查两个DC之间的复制状态:
- 运行
repadmin /showrepl命令查看复制链路和状态 - 运行
dcdiag检测DC的健康状况,修复所有复制相关的错误
- 运行
- 让新DC和原DC完成全量AD同步,确保两者的AD数据完全一致(包括用户、组、域配置等所有内容)。只有数据同步后,正常转移角色才不会有风险。
- 确保新DC和原DC之间的AD复制完全正常,没有报错。现在原DC已经上线,你可以先检查两个DC之间的复制状态:
正确的操作流程
- 先修复新DC的复制问题:
- 检查新DC和原DC的网络连通性(端口389、LDAP;53、DNS;88、Kerberos等是否开放)
- 用
repadmin /replicate <新DC名称> <原DC名称> DC=<域名>,DC=<后缀>手动触发复制,解决同步报错 - 用
dcdiag /fix修复DC的基础健康问题
- 当两个DC的复制状态完全正常,所有AD数据同步完成后,再执行正常的FSMO角色转移:
- 在原DC上打开Active Directory用户和计算机,右键域名→操作→更改域控制器,选择新DC
- 进入Operations Masters,分别切换到RID、PDC、基础设施选项卡,点击更改,把角色转移到原DC
- 同样,在Active Directory域和信任关系中转移域命名主机角色;若要转移架构主机角色,需先注册
schmmgmt.dll(命令:regsvr32 schmmgmt.dll),再打开Active Directory架构工具完成转移
- 转移完成后,用
netdom query fsmo命令确认所有FSMO角色都在原DC上,同时再次检查两个DC的复制状态,确保没有新的错误。
- 先修复新DC的复制问题:
额外提醒
如果新DC的复制问题无法修复,或者它本身的AD数据损坏严重,你可以考虑先把新DC降级(注意:降级前必须确保FSMO角色已经转移到原DC,且原DC的AD数据是最新的),之后再根据需求重新推广新DC或直接淘汰它。
备注:内容来源于stack exchange,提问作者The Gladiator
相关产品推荐
相关产品推荐

