При понижении роли контроллера домена Active Directory может появиться следующая ошибка:
Операция не выполнена по следующей причине:
Доменным службам Active Directory не удалось передать оставшиеся в разделе DC=ForestDnsZones,DC=test,DC=local данные контроллеру домена Active Directory \SRV-1.test.local.
«В службе каталогов утеряна обязательная информация и невозможно определить владельца передаваемых монопольных операций (FSMO).»
или на английском:
Active Directory Domain Services could not transfer the remaining data in directory partition DC=ForestDNSZones,DC= test ,DC=local to Active Directory Domain Controller \SRV-1.DOMAIN.LOCAL.
“The directory service is missing mandatory configuration information, and is unable to determine the ownership of floating single-master operation roles.
Данная ошибка может возникнуть из-за того, что ранее роли FSMO были переданы не корректно другому КД, например в случае выхода из строя основного КД, роли были принудительно захвачены резервным контроллером.
В интернетах ходит одна и та же инструкция от сайта к сайту, например тут. Инструкция в целом рабочая, но не совсем понятная тому, кто с этим никогда не сталкивался.
Попробую решить данную проблему и написать более подробную инструкцию по решению данной проблемы.
Первым делом, нам необходимо подключиться к текущему КД-хозяину инфраструктуры (Infrastructure master). Чтобы выяснить, какой из КД держит роли, выполним запрос в командной строке:
> netdom query fsmo
В ответ получим следующую информацию:
Хозяин схемы SRV-DC2.test.local
Хозяин именования доменов SRV-DC2.test.local
PDC SRV-DC2.test.local
Диспетчер пула RID SRV-DC2.test.local
Хозяин инфраструктуры SRV-DC2.test.local
Команда выполнена успешно.
Подключаемся по RDP к серверу, указанному напротив «Хозяин инфраструктуры» и выполняем следующие операции в консоли «Редактирование ADSI» (adsiedit.msc).
Найдем DN (distinguishedName) контроллера с ролью «Хозяин инфраструктуры», т.е. нашего сервера, к которому подключены
- Для этого в консоли ADSIedit щелкаем ПКМ по корню консоли и выбираем «Подключение к…».
- В открывшемся окне выбираем «Точка подключения» => «Выберите известный контекст именования» => «Конфигурация», жмем «ОК».
- Далее в дереве консоли движемся по следующему пути: «CN=Configuration» => «CN=Sites» => «CN=Default First-Site-Name» (или ваше имя сайта) => «CN=Servers» => «CN=Имя_вашего_КД» (который является хозяином инфраструктуры) => «CN=NTDS Settings».
- Жмем ПКМ по разделу «CN=NTDS Settings» и выбираем «Свойства».
- В открывшемся окне находим атрибут «distinguishedName» и открываем его двойным щелчком ЛКМ, копируем значение атрибута во временный текстовый файлик. Значение будет примерно таким: «CN=NTDS Settings,CN=SRV-DC2,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=test,DC=local». Закрываем редактор атрибутов и свойства «CN=NTDS Settings».
Пояснения в виде скриншотов:
Найдем и изменим атрибут fSMORoleOwner в контексте ForestDnsZones
- Для этого в консоли ADSIedit снова щелкаем ПКМ по корню консоли и выбираем «Подключение к…».
- В открывшемся окне, для удобства введем «Имя: ForestDnsZones» и выберем «Точка подключения» => «Выберите или введите различающееся имя или контекст именования» => «DC=ForestDnsZones,DC=test,DC=local», жмем «ОК». Естественно, вместо «DC=test,DC=local» указываем свой домен.
- В дереве консоли открываем раздел «DC=ForestDnsZones,DC=test,DC=local», а в окне содержимого находим объект «CN=Infrastructure», открываем его свойства двойным щелчком ЛКМ.
- В свойствах находим атрибут «fSMORoleOwner» и изменяем его значение (двойной клик ЛКМ) на значение DN нашего контроллера, которое мы копировали во временный текстовый файл. Сохраняем изменения нажатием на «Ок» в редакторе и «Ок» в свойствах.
Пояснения в виде скриншотов:
Найдем и изменим атрибут fSMORoleOwner в контексте DomainDnsZones
- Для этого в консоли ADSIedit снова щелкаем ПКМ по корню консоли и выбираем «Подключение к…».
- В открывшемся окне, для удобства введем «Имя: DomainDnsZones» и выберем «Точка подключения» => «Выберите или введите различающееся имя или контекст именования» => «DC=DomainDnsZones,DC=test,DC=local», жмем «ОК». Как и ранее, вместо «DC=test,DC=local» указываем свой домен.
- В дереве консоли открываем раздел «DC=DomainDnsZones,DC=test,DC=local», а в окне содержимого находим объект «CN=Infrastructure», открываем его свойства двойным щелчком ЛКМ.
- В свойствах находим атрибут «fSMORoleOwner» и изменяем его значение (двойной клик ЛКМ) на значение DN нашего контроллера, которое мы копировали во временный текстовый файл. Сохраняем изменения нажатием на «Ок» в редакторе и «Ок» в свойствах.
Пояснения в виде скриншотов:
Указываем контекст Находим и открываем свойства объекта CN=Infrastructure Находим и изменяем атрибут
После выполнения всех манипуляций, ошибка будет исправлена и можно будет снова пробовать понижать роль КД до рядового сервера.
Всё разобрался, надо было прописать под домене в строке DC=DomainDnsZones,DC=имя поддомена DC=test,DC=local —
Добрый день!
когда создаю конкекст DomainDnsZones то при прописывания значений и нажатия на ОК выходит ошибка
Ошибка операции. Код ошибки 0Х202b
Сервер возвратил ссылку.
00000202B: RefErr: DSID-03100742, data 0, 1 access points ref 1 : DomainDnsZone.chaconne.ru
не пойму, что не наравиться?