AD DS Operation Failed – directory service is missing mandatory configuration – Event ID 2091 – FSMO Role Broken
Active Directory Domain Services could not transfer the remaining data in directory partition DC=ForestDNSZones,DC=DOMAIN,DC=LOCAL to Active Directory Domain Controller \\SBS.DOMAIN.LOCAL.
“The directory service is missing mandatory configuration information, and is unable to determine the ownership of floating single-master operation roles.
Проверил что все роли уже перенесены с данного сервера:
netdom query /domain:<domainname> fsmo
(действительно все ноли уже на втором сервере)
Проблема оказалась в атрибуте fSMORoleOwner
Выяснилось это в результате выполнения двух комманд:
1) dsquery * cn=InfrastrucuremDC=DomainDnsZones,dc=contoso,dc=com -attr fSMORoleOwner
2) LDIFDE -f Infra_DomainDNSZones.ldf -d "CN=Infrastructure, DC=DomainDnsZones, DC=contoso, DC=com" fSMORoleOwner -l
По первой команде всё согласно запросе netdom query. А вот второй выдал следующий вывод(в файл Infra_DomainDNSZones.ldf ):
dn: CN=Infrastructure,DC=DomainDnsZones,DC=contoso,DC=com
changetype: add
fSMORoleOwner:
CN=NTDS Settings,CN=EVIL,CN=Servers,CN=Mitino,CN=Sites,CN=Configuration,DC=contoso,DC=com
- CN=EVIL - это как сервер с которого я убирал роль домен-контроллера.
Посему пришлось прибегнуть к ADSIedit.
(некоторым помогает скрипт отсюда http://support.microsoft.com/kb/949257)
Решение:
1. Найдите DN Infrastructure Master
- Откройте Adsiedit.msc
- Подключитесь к серверу что держит роль Infrastructure
- Подключитель с CN=Configuration,DC=<domain>,DC=<suffix>
- Разверните CN=Sites -> CN=”Site of the IM” -> CN=Servers -> CN=”Infrasturcte Master”
- Откройте свойства CN=NTDS Settings
- Найдите Find DistinguishedName и скопируйте значение
2. Поменяйте ForestDnsZone fSMORoleOwner
- Откройте Adsiedit.msc
- Подключитесь к серверу что держит роль Infrastructure
- Подключитесь к DC=ForestDnsZones,DC=<domain>,DC=<suffix>
- Откройте свойства Infrastructure object
- Измените значение объекта на то что вы скопировали в буфер. Оно должно быть такого формата:
CN=NTDS Settings,CN=<hostname>,CN=Servers,CN=<sitename>,CN=Sites, CN=Configuration,DC=domain,DC=local
3. Поменяйте DomainDnsZone fSMORoleOwner
- Откройте Adsiedit.msc
- Подключитесь к серверу что держит роль Infrastructure
- Подключитесь к DC=DomainDnsZones,DC=<domain>,DC=<suffix>
- Откройте свойства Infrastructure object
- Измените значение объекта на то что вы скопировали в буфер. Оно должно быть такого формата:
CN=NTDS Settings,CN=<hostname>,CN=Servers,CN=<sitename>,CN=Sites, CN=Configuration,DC=domain,DC=local
*Вы должны подключаться к DC, который является Infrastructure FSMO. Иначе наткнётесь на ошибки.
Active Directory Domain Services could not transfer the remaining data in directory partition DC=ForestDNSZones,DC=DOMAIN,DC=LOCAL to Active Directory Domain Controller \\SBS.DOMAIN.LOCAL.
“The directory service is missing mandatory configuration information, and is unable to determine the ownership of floating single-master operation roles.
Проверил что все роли уже перенесены с данного сервера:
netdom query /domain:<domainname> fsmo
(действительно все ноли уже на втором сервере)
Проблема оказалась в атрибуте fSMORoleOwner
Выяснилось это в результате выполнения двух комманд:
1) dsquery * cn=InfrastrucuremDC=DomainDnsZones,dc=contoso,dc=com -attr fSMORoleOwner
2) LDIFDE -f Infra_DomainDNSZones.ldf -d "CN=Infrastructure, DC=DomainDnsZones, DC=contoso, DC=com" fSMORoleOwner -l
По первой команде всё согласно запросе netdom query. А вот второй выдал следующий вывод(в файл Infra_DomainDNSZones.ldf ):
dn: CN=Infrastructure,DC=DomainDnsZones,DC=contoso,DC=com
changetype: add
fSMORoleOwner:
CN=NTDS Settings,CN=EVIL,CN=Servers,CN=Mitino,CN=Sites,CN=Configuration,DC=contoso,DC=com
- CN=EVIL - это как сервер с которого я убирал роль домен-контроллера.
Посему пришлось прибегнуть к ADSIedit.
(некоторым помогает скрипт отсюда http://support.microsoft.com/kb/949257)
Решение:
1. Найдите DN Infrastructure Master
- Откройте Adsiedit.msc
- Подключитесь к серверу что держит роль Infrastructure
- Подключитель с CN=Configuration,DC=<domain>,DC=<suffix>
- Разверните CN=Sites -> CN=”Site of the IM” -> CN=Servers -> CN=”Infrasturcte Master”
- Откройте свойства CN=NTDS Settings
- Найдите Find DistinguishedName и скопируйте значение
2. Поменяйте ForestDnsZone fSMORoleOwner
- Откройте Adsiedit.msc
- Подключитесь к серверу что держит роль Infrastructure
- Подключитесь к DC=ForestDnsZones,DC=<domain>,DC=<suffix>
- Откройте свойства Infrastructure object
- Измените значение объекта на то что вы скопировали в буфер. Оно должно быть такого формата:
CN=NTDS Settings,CN=<hostname>,CN=Servers,CN=<sitename>,CN=Sites, CN=Configuration,DC=domain,DC=local
3. Поменяйте DomainDnsZone fSMORoleOwner
- Откройте Adsiedit.msc
- Подключитесь к серверу что держит роль Infrastructure
- Подключитесь к DC=DomainDnsZones,DC=<domain>,DC=<suffix>
- Откройте свойства Infrastructure object
- Измените значение объекта на то что вы скопировали в буфер. Оно должно быть такого формата:
CN=NTDS Settings,CN=<hostname>,CN=Servers,CN=<sitename>,CN=Sites, CN=Configuration,DC=domain,DC=local
*Вы должны подключаться к DC, который является Infrastructure FSMO. Иначе наткнётесь на ошибки.
В 3-м пункте опечатка. Должно быть DC=DomainDnsZones,DC=,DC=
ОтветитьУдалитьОчевидно, последствия копи-пасты. А в целом статья хорошая, мне помогло. Спасибо!