wbadmin 备份域控制器系统状态必须加 -allCritical 参数,否则失败;还原须在 DSRM 模式下进行,完成后需执行 dcgpofix、dfsrmit、repadmin 同步及清理 DNS 缓存。
用 wbadmin 备份域控制器系统状态必须加 -allCritical 参数
直接运行 wbadmin start systemstatebackup 在域控制器上会失败,报错类似:error: the system state backup cannot be performed on this computer because it is a domain controller.。这是因为 windows 对 dc 的系统状态备份有额外要求——必须同时备份所有关键卷(含 ntds.dit、sysvol 所在卷),而不仅仅是注册表、启动文件等传统系统状态内容。
正确做法是显式指定 -allCritical,让 wbadmin 自动识别并包含 Active Directory 数据库所在卷:
wbadmin start systemstatebackup -backupTarget:E: -allCritical -quiet
-
-backupTarget必须是本地物理磁盘或已挂载的固定卷(不支持网络路径、可移动设备) - 目标卷需有至少 2–3 倍于
NTDS.dit文件大小的空闲空间(通常 10–20 GB 起) - 执行命令的账户必须是
Domain Admins和本地Backup Operators组成员
还原前必须确认 DC 是否处于 Directory Services Restore Mode(DSRM)
系统状态还原不能在正常启动的域控制器上进行——AD 数据库被占用,ntdsutil 或 wbadmin 都会拒绝操作。唯一可行时机是启动到 DSRM 模式,此时 NTDS 服务未加载,NTDS.dit 可被安全覆盖。
进入 DSRM 的方法:
- 重启服务器,在登录界面按
F8(UEFI 系统可能需长按 Shift + 重启 → “疑难解答” → “高级选项” → “启动设置” → 重启后按4或6) - 选择“目录服务还原模式”,用 DSRM 密码登录(不是域管理员密码,是安装 AD DS 时单独设置的)
- 确认登录后看到的是命令行或最小化桌面(非完整 GUI),且任务管理器中无
lsass.exe加载 AD 模块
用 wbadmin 还原系统状态时需跳过 SYSVOL 同步警告
执行 wbadmin restore systemstate 后,如果备份来自同一台 DC(非权威还原),还原完成后系统会自动触发 SYSVOL 的 DFSR 复制,但可能因 USN 回滚导致复制冲突或空白 SYSVOL。Windows 会弹出警告:“This operation will overwrite the current SYSVOL data...”,此时必须手动选择“Yes, I want to restore SYSVOL”并立即执行 dcgpofix 补救。
更稳妥的做法是还原后立刻以命令行方式处理:
wbadmin restore systemstate -version:01/15/2024-03:00 -quiet -overwrite
-
-version格式必须严格为MM/DD/YYYY-HH:MM(注意斜杠和冒号,无空格) - 还原完成后不要直接重启,先运行:
dcgpofix /target:Domain(修复组策略模板)和dfsrmig /setglobalstate 0(重置 DFSR 状态) - 若该 DC 是森林根域 PDC 模拟器,还需在还原后手动运行
ntdsutil→authoritative restore→restore object "CN=Users,DC=contoso,DC=com"等命令标记权威恢复
非授权还原后必须强制同步其他 DC 并验证 USN 和 Invocation ID
单纯还原一台 DC 的系统状态不会自动通知其他域控制器,它们仍按旧 USN 推进复制,结果就是“幽灵对象”(已删除但又出现)、密码无法同步、甚至复制中断。必须人工介入打断并重建复制链路。
还原完成、重启进正常域模式后立即执行:
- 运行
repadmin /showrepl检查是否所有连接显示last attempt was successful - 对每台其他 DC 运行
repadmin /syncall /AdeP强制全量同步(/A:所有命名上下文,/d:显示详情,/e:包含 GC,/P:推送模式) - 比对
repadmin /showmeta "CN=Users,DC=contoso,DC=com"中各 DC 的Version和Originating DSA Invocation ID,确保一致;若 Invocation ID 不同,说明数据库被重新初始化,必须重新建立复制关系
最常被忽略的是:还原后没清空 DNS 缓存(ipconfig /flushdns)和没检查 Kerberos 票据策略是否重置,这会导致客户端登录缓慢或失败,但错误日志里往往只显示模糊的 KDC_ERR_PREAUTH_REQUIRED。










