Windows 11 执行 DC 复制时 Invoke-Command 报错的故障排除指南
2024-03-24 10:35:43
## Windows 11 中使用 Invoke-Command 执行 DC 复制时的故障排除
问题
在 Windows 11 上执行 Invoke-Command DomainController {repadmin /syncall}
时,你可能会遇到 "Error contacting server ... Access is denied." 的错误。
前提条件
- 已在 Windows 10 和 Windows 11 机器上执行全新安装。
- 两台机器均在同一域和 OU 中。
- 两台机器均为域管理员并具有提升的 PowerShell 权限。
- 已禁用 UAC。
- PowerShell 执行策略设置为 Unrestricted。
可能原因
- DC 上的权限受限
- PowerShell 版本不兼容
- 防火墙或网络配置问题
- 防病毒软件干扰
故障排除步骤
1. 检查 DC 上的权限
确认用户帐户具有在 DC 上执行复制操作的足够权限。检查以下内容:
- 属于 "Replicating Directory Changes" 组
- 具有对正在复制的分区的 "Replicate Directory Changes" 权限
2. 验证 PowerShell 版本兼容性
Windows 11 机器具有比 Windows 10 机器更高的 PowerShell 版本 (5.1.22621.2506 与 5.1.19041.3930)。确保 Invoke-Command
cmdlet 与两个版本兼容。
3. 检查防火墙和网络设置
确认防火墙没有阻止客户端与 DC 之间的通信。暂时禁用防火墙并再次测试 Invoke-Command
。
4. 禁用防病毒软件
暂时禁用防病毒软件以排除任何可能干扰复制过程的情况。
5. 替代方法
尝试使用 Sync-ADObject
cmdlet 替代 Invoke-Command
:
Sync-ADObject -DestinationServer "DestinationDC" -SourceServer "SourceDC" -Partition "PartitionName"
6. WMI 过滤
检查 Windows 11 机器上是否启用了 WMI 过滤。如果已启用,请禁用它并再次测试 Invoke-Command
。
7. 脚本执行策略
确保在两台机器上都将执行策略设置为 "Unrestricted"。在 Windows 11 机器上运行以下命令:
Set-ExecutionPolicy Unrestricted
8. 注册表设置
修改 Windows 11 机器上的以下注册表项:
- 项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
- 值:
LocalAccountTokenFilterPolicy
- 数据:
1
(启用)
9. 重建安全符
使用 RebuildSD
工具重建 DC 上的安全描述符。这可以重置任何权限问题。
10. 联系 Microsoft 支持
如果问题仍然存在,请与 Microsoft 支持联系以获得进一步的帮助。
结论
通过遵循这些故障排除步骤,你可以解决 Windows 11 中使用 Invoke-Command
执行 DC 复制时出现的错误。请记住,确保权限、配置正确以及排除干扰是成功解决此问题的关键。
常见问题解答
1. 我尝试了所有故障排除步骤,但问题仍然存在。
请联系 Microsoft 支持以获得进一步的帮助。他们可能拥有特定于你的环境的额外见解或解决方案。
2. 还有什么其他的原因可能导致此错误?
其他可能的原因包括:
- 目标 DC 不可访问
- RPC 配置不正确
- 网络延迟或不稳定
3. 如何防止此错误再次发生?
定期检查和验证 DC 上的权限、防火墙配置、PowerShell 版本以及防病毒软件设置。
4. 我需要重新启动机器才能应用更改吗?
在某些情况下,可能需要重新启动机器才能应用更改,例如修改注册表设置。
5. 还有什么我可以做的来提高 DC 复制的性能?
优化网络连接、启用 DC 代理和使用复原模式可以提高 DC 复制的性能。