Понижение контроллера домена и удаление роли AD DS
Обновлено: 04.05.2021
Опубликовано: 27.06.2020
Используемые термины: Active Directory, FSMO.
Мы рассмотрим пример корректного удаление роли Active Directory Domain Services для Windows Server 2012 / 2012 R2 / 2016 / 2019.
Процесс полного удаления разобьем на несколько этапов:
1. Подготовка среды AD
Перенос ролей контроллера домена
Проверка состояния AD
2. Понижение уровня контроллера домена до рядового сервера
Графический интерфейс
Powershell
3. Удаление роли AD DS
Графический интерфейс
Powershell
4. Вывод сервера из домена
Графический интерфейс
Powershell
Вопросы и ответы
Подготовка системы
Если в нашей среде AD не один контроллер домена и мы не хотим удалять сам домен, а только один из его серверов со службой каталогов, стоит выполнить предварительные операции, чтобы минимизировать возможные проблемы.
Перенос ролей контроллера домена
Active Directory насчитывает 5 FSMO ролей, которые отвечают за корректную работу службы каталогов. Смотрим, на каких серверах запущены данные роли с помощью команд в Powershell:
Get-ADForest dmosk.local | ft DomainNamingMaster, SchemaMaster
Get-ADDomain dmosk.local | ft InfrastructureMaster, PDCEmulator, RIDMaster
* где dmosk.local — домен, для которого нужно узнать назначенные роли FSMO.
Если какие-то роли назначены на сервере, который планируется понизить, то необходимо с помощью команды типа:
Move-ADDirectoryServerOperationMasterRole <имя сервера, куда переносим> <название роли>
… передать роль.
Подробнее о передаче и захвате в инструкции Управление FSMO ролями Active Directory с помощью Powershell.
Проверка состояния AD
На любом из контроллеров домена вводим команду:
dcdiag /a /q
Данная команда запустит проверку состояния среды AD и выдаст ошибки, если такие будут. Необходимо обратить внимание на сообщения и, по возможности, решить проблемы.
Понижение контроллера домена
Первым шагом понизим наш сервер до рядового сервера. Это можно сделать с помощью графического интерфейса, Powershell или командной строки.
Графика
Открываем Диспетчер серверов и переходим в Управление — Удалить роли и компоненты:

Если откроется окно с приветствием, то просто нажимаем Далее (при желании, можно поставить галочку Пропускать эту страницу по умолчанию):

В окне «Выбор целевого сервера» выбираем сервер, для которого мы будем понижать уровень AD:

… и нажимаем Далее.
Снимаем галочку Доменные службы Active Directory. откроется окно в котором отобразится список компонентов для удаления — нажимаем Удалить компоненты:

Система вернет ошибку с предупреждением, что сначала нужно понизить AD — кликаем по ссылке Понизить уровень этого контроллера домена:

В следующем окне мы увидим предупреждение о том, что компьютер будет перезагружен и возможность принудительно понизить уровень — просто нажимаем Далее:

Система отобразит роли AD, которые будут удалены. Ставим галочку Продолжить удаление и нажимаем Далее:

Вводим дважды пароль учетной записи локального администратора, который будет использоваться после понижения до рядового сервера:

Кликаем по Понизить уровень:

Процесс займет какое-то время. После мы увидим «Уровень контроллера домена Active Directory успешно понижен»:

Сервер автоматически будет перезагружен.
Powershell
Открываем консоль Powershell от администратора и вводим:
Uninstall-ADDSDomainController
Система запросит пароль для локальной учетной записи администратора, которая будет использоваться после понижения — задаем новый пароль дважды:
LocalAdministratorPassword: **********
Подтвердить LocalAdministratorPassword: **********
Мы получим предупреждение о перезагрузки сервера. Соглашаемся:
После завершения этой операции сервер будет автоматически перезапущен. Когда вы удалите доменные службы Active
Directory на последнем контроллере домена, этот домен перестанет существовать.
Вы хотите продолжить эту операцию?
[Y] Да — Y [A] Да для всех — A [N] Нет — N [L] Нет для всех — L [S] Приостановить — S [?] Справка
(значением по умолчанию является «Y»): A
Для выполнения команды уйдет некоторое время, после чего сервер уйдет в перезагрузку.
Удаление роли AD DS
После понижения сервера роль, по-прежнему, будет установлена. Для ее удаления мы также можем воспользоваться графической оболочкой или командной строкой.
Графика
В диспетчере серверов кликаем снова по Управление — Удалить роли и компоненты:

Среди серверов выбираем тот, на котором будем удалять роль:

* сервер может быть только один. Тогда выбираем его.
Снимаем галочку Доменные службы Active Directory, в открывшемся окне кликаем по Удалить компоненты:

Галочка для доменных служб будет снята:

… кликаем по Далее несколько раз.
В последнем окне ставим галочку Автоматический перезапуск конечного сервера, если требуется и подтверждаем действие ответом Да:

Роль будет удалена, а сервер отправлен в перезагрузку.
Powershell
Запускаем Powershell от администратора и вводим:
Remove-WindowsFeature -Name AD-Domain-Services
Роль контроллера будет удалена. Мы должны увидеть сообщение:
ПРЕДУПРЕЖДЕНИЕ: Чтобы завершить удаление, вам необходимо перезапустить этот сервер.
Перезагружаем сервер:
shutdown -r -t 0
Вывод сервера из домена
В случае, если у нас есть другие контроллеры домена, наш сервер останется в домене. При необходимости его окончательного вывода из эксплуатации, стоит вывести его из среды AD.
Графика
Открываем свойства системы (команда control system или свойства Компьютера) и кликаем по Изменить параметры:

В открывшемся окне нажимаем на Изменить:

И переводим компьютер в рабочую группу:

* в данном примере в группу с названием WORKGROUP.
Система запросит логин и пароль от пользователя Active Directory, у которого есть права на вывод компьютеров из домена — вводим данные.
Если все сделано верно, мы должны увидеть окно:

После перезагружаем сервер или выключаем его.
Powershell
Запускаем Powershell от имени администратора и вводим:
Remove-Computer -UnjoinDomaincredential dmoskmaster -PassThru -Verbose
* где dmoskmaster — учетная запись в домене с правами вывода компьютеров из AD.
Соглашаемся продолжить, ознакомившись с предупреждением:
Подтверждение
Чтобы войти в систему на этом компьютере после его удаления из домена, вам потребуется пароль учетной записи локального
администратора. Вы хотите продолжить?
[Y] Да — Y [N] Нет — N [S] Приостановить — S [?] Справка (значением по умолчанию является «Y»): Y
Перезагружаем компьютер:
shutdown -r -t 0
… или выключаем:
shutdown -s -t 0
Вопросы и ответы
Дополнительные сведения относительно понижения и удаления AD.
1. Как удалить дочерний домен?
Мы должны быть уверены, что в данном домене не осталось важных ресурсов предприятия. После необходимо по очереди удалить все контроллеры домена по данной инструкции. При удалении последнего сервера AD для дочернего домена, будет удален сам дочерний домен из леса.
2. Как понизить режим работы домена?
Данный режим не понизить — это односторонняя операция. Максимум, что можно сделать, это восстановить службу AD из резервной копии, когда режим был нужного уровня.
3. Что делать, если умер основной контроллер домена?
Рассмотрим несколько вариантов:
- Если есть резервная копия, восстанавливаемся из нее.
- Если в среде несколько контроллеров домена, захватываем FSMO-роли (подробнее в инструкции Управление FSMO ролями Active Directory с помощью Powershell) и вручную удаляем уже несуществующий контроллер. После можно поднять новый контроллер, сделав его резервным.
- Хуже, когда нет ни копий, ни второго контроллера. В таком случае, поднимаем новый контроллер, создаем новый лес, домен и переводим все компьютеры в него.
4. Что делать, если контроллер домена возвращает ошибку при понижении?
Самый лучший способ, разобраться с ошибкой, решив проблему, которая ее вызывает. Если это не удалось сделать, принудительно понижаем сервер командой:
dcpromo /forceremoval
При понижении роли контроллера домена 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».
Пояснения в виде скриншотов:

Подключаемся 
Выбираем контекст 
Открываем свойства 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 нашего контроллера, которое мы копировали во временный текстовый файл. Сохраняем изменения нажатием на «Ок» в редакторе и «Ок» в свойствах.
Пояснения в виде скриншотов:

Указываем контекст 
Находим и открываем свойства объекта CN=Infrastructure 
Находим и изменяем атрибут
Найдем и изменим атрибут 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 
Находим и изменяем атрибут
После выполнения всех манипуляций, ошибка будет исправлена и можно будет снова пробовать понижать роль КД до рядового сервера.
- Remove From My Forums
Проблема с понижением роли контроллера домена
-
Вопрос
-
Подскажите, пожалуйста, что делать.
Конфигурация: Win 2003 R2 Std — был единственным контроллером домена. Добавил два Win 2008 Ent. Поднял на них АД ДС, через dcpromo сделал контроллерами домена. Все работает, реплицируется, авторизируется. Потом с помощью ntdsutil передал на один из них все роли. Начинаю выводить из домена Вин 2003 — запускаю dcpromo — получаю окно, что «контроллер домена содержит последнюю реплику раздела DC=ForestDnsZones, DC=company,DC=net». Через ntdsutil/add nc replica передаю ее на другой контроллер домена (туда, где все роли). Проверяю репликацию — проходит. Через ntdsutil/remove nc replica удаляю ее. Снова запускаю dcpromo -все шаги проходят нормально — в самом конце выдает ошибку:
Операция не выполнена по следующей причине:
Active Directory не удалось обнаружить другой контроллер домена для передачи оставшихся в разделе DC=ForestDnsZones, DC=company,DC=net данных.
«Указанный домен не существует или к нему невозможно подключиться».После этого репликация с/на старый контроллер периодически прерывается ошибкой :
При попытке синхронизации контекста именования ForestDNsZones.company.net с контроллера домена НОВОГО на контроллер домена СТАРЫЙ произошла следующая ошибка:
Контекст именования находится в процессе удаления или не был реплицирован с указанного сервера.
Эта операция будет прекращена.Помогите, пожалуйста 🙂
-
Перемещено
23 апреля 2012 г. 2:48
merge forums (От:Windows Server 2008)
-
Перемещено
Ответы
-
DNS Error code: 0x00002339
[FATAL] Failed to fix: DC DNS entry ForestDnsZones.agtrade.net. re-registera
tion on DNS server ‘192.168.1.10’ failed.как бы зоны agtrade.net у меня в принципе нет. Была agrotrade.com.ua, которую потом переименовали в hq.agtrade.net
Похоже проблема не с понижением dc, а с тем, что когда-то переименование домена не совсем корректно отработало.
Создайте несуществующую зону, поперезапускайте netlogon и посмотрите будет ли идти регистрация в несуществующую зону.-
Помечено в качестве ответа
Nikita Panov
29 июля 2009 г. 7:14
-
Помечено в качестве ответа
|
0 / 0 / 0 Регистрация: 31.01.2016 Сообщений: 65 |
|
|
1 |
|
|
Server 2016 Ошибка при понижении контроллера домена24.11.2020, 17:39. Показов 2911. Ответов 3
Здравствуйте, есть сеть с доменом, есть два КД. На втором КД решил добавить один хдд и сделать раид для ускорения! Сделал бекап акронисом, потом восстановил его на раид. Все заработало, все круто! Но оказывается не совсем! Перестала работать репликация, служба нетлогон приостановлена! Это я заметил примерно через пару месяцев! Начал читать и потом я понял что я попал на USNRollBack. Что поделать, решил делать «по научному», то есть понизить контроллер и потом снова сделать его КД. Но и тут не все так просто, понижаться он не хочет! Выдает ошибку: Сбой операции по следующей причине DFS Replication: Главное конечное имя неверно. Это если галочка удалить принудительно, а если без нее то пишет что то вроде конечный сервер отвергает запрос на репликацию! что то в этом роде!
__________________
0 |
|
352 / 164 / 61 Регистрация: 01.06.2015 Сообщений: 656 |
|
|
26.11.2020, 12:12 |
2 |
|
РешениеПредставьте, что у вас КД сдох (что собственно и произошло), забейте на него и поставите новый, старый выкосите через ntdsutil
0 |
|
0 / 0 / 0 Регистрация: 31.01.2016 Сообщений: 65 |
|
|
26.11.2020, 15:29 [ТС] |
3 |
|
забейте на него и поставите новый это самый простой вариант, но хотелось бы решение проблемы не молотком!
0 |
|
352 / 164 / 61 Регистрация: 01.06.2015 Сообщений: 656 |
|
|
26.11.2020, 21:08 |
4 |
|
Это самый дешёвый вариант. Вы больше человекочасов на ремонт и разбор полётов потратите, который ни какой ощутимой пользы не принесёт + не дай Бог ещё второй (последний) КД ушатаете… Не по теме: Кроме того это даже не я придумал: лет пятнадцать назад я это мнение от представителей МС на одной из конференций услышал. Вряд-ли с того времени что-то поменялось.
0 |
- Remove From My Forums
-
Question
-
I currently have 4 domain controllers and I want to demote 1 of them. Here are the 4 I have.
1) Server 2008 standard X-32
2) Server 2008 standard X-32
3) Server 2008 R2 Standard X-64
4) Server 2003 R2 standard X-32I just promoted my 2008 R2 DC yesterday with no issues and waited overnight for replication to complete.
I want to remove server 1) running server 2008 standard as it was only a temporary DC with no FSMO roles. This is not a read only DC
I am logged on with an account that has appropriate permissions (Enterpriseschemadomain admin rights).
When I run the DCPROMO command to demote the server it asks if I want to delete the DNS delegations and I say yes.
It prompts me for a username and password to remove the DNS delegation records.
I supply a usernamepassword combo with Enterpriseschemadomain admin rights
DCpromo starts to run and then i get an error stating
the following:the operation failed because: the attempt at remote direcory server XXX.domain.net to remove the server CN=server, CN=servers… was unsuccessful. Access is denied.
It prompts me for a username and password again. It will not accept anything I put in.
I also can’t replicate from this Domain controller to any other domain controller. I get the following error message:
The following error occurred during the attempt to contact the Domain Controller XXXXXXX: Access is denied
I can replicate from other domain controllers to the one I want to demote.
I have run dcdiag /test:dns and there are no IPv4 errors and just warnings for missing IPv6 AAAA records
I have also restarted the netlogon service and registered the DNS to no avail
I do event viewer error below:
Event Type: Error
Event Source: DNS
Event Category: None
Event ID: 4015
Date: 12/15/2009
Time: 2:59:49 PM
User: N/A
Computer: CORDC2.hubble.net
Description:
The DNS server has encountered a critical error from the Active Directory. Check that the Active Directory is functioning properly. The extended error debug information (which may be empty) is «000020AC: SvcErr: DSID-030F00FF, problem 5002 (UNAVAILABLE), data 0». The event data contains the error.For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Data:
0000: 34 00 00 00 4…It seems like a permission issue but i don’t know where else to look.
Anything to help out would be great
Hubble IT Guy
Answers
-
The time between DC’s was corect as was DNS and all permissions on the partitions. I did manage to get AD removed by removing the Global catalog option from the DC in question and then running DCpromo. DCpromo ran as advertised. Not sure why this would have made any difference but thanks for the suggestions. I really appreciate everyones input in these forums. 🙂
Hubble IT Guy
-
Marked as answer by
Thursday, December 17, 2009 6:35 AM
-
Marked as answer by
- Remove From My Forums
-
Question
-
I currently have 4 domain controllers and I want to demote 1 of them. Here are the 4 I have.
1) Server 2008 standard X-32
2) Server 2008 standard X-32
3) Server 2008 R2 Standard X-64
4) Server 2003 R2 standard X-32I just promoted my 2008 R2 DC yesterday with no issues and waited overnight for replication to complete.
I want to remove server 1) running server 2008 standard as it was only a temporary DC with no FSMO roles. This is not a read only DC
I am logged on with an account that has appropriate permissions (Enterpriseschemadomain admin rights).
When I run the DCPROMO command to demote the server it asks if I want to delete the DNS delegations and I say yes.
It prompts me for a username and password to remove the DNS delegation records.
I supply a usernamepassword combo with Enterpriseschemadomain admin rights
DCpromo starts to run and then i get an error stating
the following:the operation failed because: the attempt at remote direcory server XXX.domain.net to remove the server CN=server, CN=servers… was unsuccessful. Access is denied.
It prompts me for a username and password again. It will not accept anything I put in.
I also can’t replicate from this Domain controller to any other domain controller. I get the following error message:
The following error occurred during the attempt to contact the Domain Controller XXXXXXX: Access is denied
I can replicate from other domain controllers to the one I want to demote.
I have run dcdiag /test:dns and there are no IPv4 errors and just warnings for missing IPv6 AAAA records
I have also restarted the netlogon service and registered the DNS to no avail
I do event viewer error below:
Event Type: Error
Event Source: DNS
Event Category: None
Event ID: 4015
Date: 12/15/2009
Time: 2:59:49 PM
User: N/A
Computer: CORDC2.hubble.net
Description:
The DNS server has encountered a critical error from the Active Directory. Check that the Active Directory is functioning properly. The extended error debug information (which may be empty) is «000020AC: SvcErr: DSID-030F00FF, problem 5002 (UNAVAILABLE), data 0». The event data contains the error.For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.
Data:
0000: 34 00 00 00 4…It seems like a permission issue but i don’t know where else to look.
Anything to help out would be great
Hubble IT Guy
Answers
-
The time between DC’s was corect as was DNS and all permissions on the partitions. I did manage to get AD removed by removing the Global catalog option from the DC in question and then running DCpromo. DCpromo ran as advertised. Not sure why this would have made any difference but thanks for the suggestions. I really appreciate everyones input in these forums. 🙂
Hubble IT Guy
-
Marked as answer by
Thursday, December 17, 2009 6:35 AM
-
Marked as answer by
Сообщение было отмечено antuanidze как решение
