我今天考虑了几个小时。这有点令人困惑,但是正如我在评论中指出的那样,我最好的猜测是,您要么正在进行某种磁盘缓存,要么在断电/脏关机清除了缓存内容之前没有将其提交到磁盘...或者,由于您正在容纳ntds.dit的RAID卷上运行,断电可能会导致RAID卷暂时中断或变得不连贯,即使有片刻也是如此。
我们知道,USN回滚的关键在于何时将DC恢复到其状态,这是经典示例,它是从快照还原虚拟DC。我知道这并不完全适用于您...但是即使在具有写缓存的磁盘的情况下,您也可以将磁盘上物理上的数据视为包含“先前状态”,而写缓存实际上是包含最新状态的DC ...即使两个状态相隔仅半秒。
仔细考虑微软的这些评论:
虚拟域控制器准则
与虚拟IDE相比,虚拟SCSI磁盘提供了更高的性能,并且它们支持强制单元访问(FUA)。FUA确保操作系统绕过任何和所有缓存机制直接从介质写入和读取数据。
我知道您的DC并非VM,但该概念仍然适用。磁盘缓存和DC不能混合使用。这就是为什么安装Active Directory会禁用写缓存作为Windows策略的原因,但是您的硬件RAID控制器等中仍然可以使用缓存机制。
方案B:从损坏的镜像中的其他驱动器启动Active Directory
升级域控制器。在镜像驱动器上找到Ntds.dit文件。
打破镜子。
通过使用镜像中第一个驱动器上的Ntds.dit文件,继续进行入站复制和出站复制。
通过使用镜像中第二个驱动器上的Ntds.dit文件来启动域控制器。
这是一个复制杀手,它在具有RAID 1卷的物理DC上给我带来很多困扰。我从来没有亲自造成过USN的实际回滚,但是它将杀死该DC上的复制。我的意思是,假设RAID 1卷包含2个磁盘。1个驱动器死。删除它,弹出一个新驱动器... aaaaaaand DSA Not Writable。
来自AskDS博客:
如果您的VM主机或活动目录数据库所在的存储磁盘没有不间断电源(UPS),请确保在虚拟机的主机上禁用写缓存。请参考此链接以获取其他指导。相反,如果需要为托管DC的VM主机保持启用写缓存,请安装UPS以免损坏DC。
同样,它是在谈论虚拟DC,但是磁盘缓存概念也适用于物理DC。
所以这是我的主意。我认为这与您的存储系统有关。绝对要至少在ntds.dit卷上禁用任何和所有缓存机制,尤其是在容易断电的情况下。