FRS не реплицирует скрипты C:\WINDOWS\SYSVOL\domain\ domain после неавторизованного восстановления
У нас работает несколько контроллеров домена Windows Server 2008 R2. Репликация sysvol выполняется NTFRS.
Вчера наш главный DC сообщил о "JRNL_WRAP_ERROR" для общего ресурса SYSVOL. Я запустил chkdsk на C:\, но это не показало никаких проблем. После этого я инициировал неавторизованное восстановление, остановив ntfrs.exe, установив для BurFlags значение "D2" в HKLM/SYSTEM/CurrentControlSet/services/Ntfrs/Parameters/Backup\Restore/Process при запуске и снова перезапустив ntrfs.exe.
Хотя это, кажется, работает для C:\WINDOWS\SYSVOL \ domain \ Policies, по какой-то причине он не извлекает сценарии C:\Windows\Sysvol\domain\ из других контроллеров домена. В папке scripts есть несколько каталогов после неавторизованного восстановления, и они действительно должны быть там. Тем не менее, он не содержит все из них, и те, которые он содержит, являются неполными.
Я также переименовал C:\Windows\ntrfs\jet и снова запустил неавторизованное восстановление, чтобы исключить проблемы, связанные с кешем, но это также не привело к успеху.
После перезапуска неавторизованного восстановления я также заметил, что каталог scripts, как ни странно, не появился в C:\Windows\SYSVOL\domain\ NtFrs_PreExisting ___ See_EventLog, в то время как каталог Policies появился. Я предположил, что он просто перемещает C:\Windows\SYSVOL\domain\ в эту папку, но, похоже, не все так просто. Тот факт, что он пропускает скрипты, заставляет меня задуматься, есть ли какая-то база данных, отслеживающая содержимое в C:\Windows\SYSVOL\domain\, так что он перемещает только то, что на самом деле знает.
Журнал событий мне мало помогает, он говорит, что SYSVOL был успешно инициирован после неавторизованного восстановления.
РЕДАКТИРОВАТЬ: На данный момент мы избавились от этой проблемы, переустановив AD на уязвимом сервере. Хотя после удаления каталог очищался, по какой-то причине сценарии C:\Windows\Sysvol\domain\scripts остались - возможно, проблема с разрешениями. Затем мы явно удалили C:\WINDOWS\SYSVOL и заново установили AD.
1 ответ
Проблема снова возникла на другом DC. Оказывается, несколько файлов были в папке C:\Windows\Sysvol\domain\scripts - некоторые исполняемые файлы. NTFRs.exe не может выполнить свою задачу.
ntrfsutl был полезен для устранения этой проблемы. http://support.microsoft.com/kb/822300/en-us безусловно, полезно. Я использовал ntrfsutl inlog, чтобы увидеть состояние передаваемых файлов. В моем случае папка сценариев постоянно находилась в состоянии IBCO_INSTALL_REN_RETRY. Затем я нашел все файлы, которые удерживали блокировки, в каталоге скриптов (и его подкаталогах). Это были несколько программ, которые также работали на клиентских компьютерах (но открывались через общий ресурс NETLOGON).
Вы можете использовать handles.exe из SysInternal Tools для определения открытых файловых дескрипторов. В моем случае некоторые файлы были открыты процессом "Система". Они были фактически открыты через сетевой ресурс клиентскими компьютерами. Я закрыл их дескриптор через compmgmt.msc.
После того как все открытые дескрипторы были закрыты, репликация, наконец, прошла успешно.