Windows Server: Помилка 4012 з'являється в журналі подій реплікації DFS контролера домену Active Directory
Samenvatting: Якщо контролер домену Active Directory (DC) не може довго реплікувати дані SYSVOL від партнера, реплікація SYSVOL припиняється. Помилка 4012 реєструється в журналі подій Distributed File System Replication (DFSR) ураженого DC у момент її виникнення. ...
Symptomen
Помилка 4012 (джерело: DFSR) з'являється в журналі подій DFSR DC. Опис події містить шлях до папки SYSVOL, як показано тут:
The DFS Replication service stopped replication on the folder with the following local path: C:\Windows\SYSVOL\domain. This server has been disconnected from other partners for n days, which is longer than the time allowed by the MaxOfflineTimeInDays parameter (60). DFS Replication considers the data in this folder to be stale, and this server will not replicate the folder until this error is corrected.
[The rest of the event description has been omitted.]
Локальний шлях може відрізнятися, хоча ця стаття застосовується лише якщо згадується папка SYSVOL. У наведеному вище прикладі n означає кількість днів, коли DC не зміг зв'язатися з партнером. Це число змінюється, але завжди перевищує значення MaxOfflineTimeInDays.
Oorzaak
Розподілена реплікація файлової системи (DFSR) вимагає, щоб партнери з реплікації регулярно спілкувалися. Якщо сервер довго не може спілкуватися з партнером, реплікація на цьому сервері вимикається.MaxOfflineTimeInDays, який має значення за замовчуванням 60, є найдовший допустимий час для серверів без зв'язку між собою. Це аналогічно, хоча й окремо, терміну життя надгробка в лісі Active Directory.
Oplossing
Сценарій 1: У домені є лише один DC.
Якщо в домені є лише один DC, потрібна авторитарна синхронізація SYSVOL, щоб гарантувати реплікацію при додаванні іншої. Дивіться, як виконати авторитетну синхронізацію даних SYSVOL за допомогою розподіленої реплікації файлової системи (DFSR) для цих кроків. Будь-які кроки, що згадують інші DC або примусове реплікування, можна пропустити.
Сценарій 2: У домені є кілька DC.
Якщо в домені є кілька DC, необхідно визначити, скільки з них зачеплене проблемою. Зробіть це, шукаючи в журналах подій DFSR DC на помилку 4012. Усі постраждалі DC мають цю помилку у своїх журналах у недавньому минулому.
- Якщо уражений лише один DC, виконайте неавторитативну синхронізацію SYSVOL на цьому DC. Дивіться, як виконати неавторитативну синхронізацію даних SYSVOL за допомогою розподіленої реплікації файлової системи (DFSR) для відповідних кроків.
- Якщо кілька DC уражені, але є інші, які не зачеплені, виконайте неавторитативну синхронізацію SYSVOL на всіх уражених DC.
- Якщо всі DC у домені постраждали, один DC має бути обраний авторитетним джерелом даних SYSVOL. Для цього потрібно перевірити дані в ієрархії папок SYSVOL кожного DC і визначити, яка копія є найактуальнішою. Після вибору авторитетного джерела виконайте авторитативну синхронізацію SYSVOL на цьому DC. Дивіться сценарій 1 вище для посилання на кроки. Виконайте всі етапи процедури для синхронізації SYSVOL на всіх DC у домені.
Extra informatie
У багатопостійному домені також можливо відновити реплікацію на ураженому DC, збільшивши значення MaxOfflineTimeInDays. Це не було ретельно протестовано, але неодноразово вирішувало проблему. До встановлення MaxOfflineTimeInDays, виконайте цю команду:
wmic.exe /namespace:\\root\microsoftdfs path DfsrMachineConfig set MaxOfflineTimeInDays=x
Значення x має бути більшим за кількість днів, вказаних у помилці 4012. Перезапустіть сервіс реплікації DFS після виконання команди та перевірте журнал подій DFS Replication на наявність помилок. Якщо реплікація вже деякий час не працює, очікуються події з виявлення та вирішення конфліктів. Вони свідчать, що DFSR працює за задумом.
Після відновлення реплікації виконайте команду ще раз із значенням 60 для повернення MaxOfflineTimeInDays до свого значення за замовчуванням. (Це необов'язково.)
Оновлення Windows Server 2025
The wmic командування, яке було застарілим для кількох поколінь ОС, було видалено з Windows Server 2025. Його можна додати за допомогою
dism /add-capability. Однак може бути простіше виконати еквівалентну команду PowerShell:
Get-WmiObject -Namespace "root\microsoftdfs" -Class DfsrMachineConfig | Set-WmiInstance -Arguments @{MaxOfflineTimeInDays=x}