Репликация DFS — штука интересная. При правильном подходе она позволяет решить множество проблем, а при неправильном может их создать. И вот одна из таких проблем.
В результате сбоя по питанию система была перезагружена, а поскольку автоматическое восстановление было отключено, то после загрузки работа репликации не возобновилась. Проблему заметили не сразу, а через достаточно большое количество времени. В результате при попытке запустить репликацию имеем ошибку с кодом 4012. Суть ошибки в том, что простой репликации превысил максимально возможный срок, поэтому возобновить ее работу невозможно.
В сообщении рекомендуется вывести сервер из группы репликации и снова добавить его. Однако в моем случае это решение почему то не сработало и ошибка осталась.
Для исправления ситуации можно пойти другим путем и просто увеличить максимально возможный срок простоя, который хранится в параметре MaxOfflineTimeInDays. Посмотреть его значение можно с помощью утилиты wmic, выполнив такую команду:
wmic.exe /namespace:\\root\microsoftdfs path DfsrMachineConfig get MaxOfflineTimeInDays
Как видите, по умолчанию этот срок составляет 60 дней. Увеличим его до 120 следующей командой:
wmic.exe /namespace:\\root\microsoftdfs path DfsrMachineConfig set MaxOfflineTimeInDays=120
То же самое можно сделать с помощью PowerShell. Для проверки текущего значения можно воспользоваться командой:
Get-WmiObject -Namespace root\microsoftdfs -Class DfsMachineConfig | fl MaxOfflineTimeInDays
А для изменения такой:
Set-WmiInstance -Namespace root\microsoftdfs -Class DfsMachineConfig -Arguments @{MaxOfflineTimeInDays=120}
После изменения параметра необходимо перезапустить службу DFSR и репликация заработает. Затем можно вернуть значение параметра MaxOfflineTimeInDays обратно, к дефолтному значению.
Спасибо, помогло. Как раз развалилась репликация шары на одном из серверов DFS (восстановили из копии). Две минуты — и проблемы нет.