Ручное удаление контроллера домена и потерянного домена

Если случилась ситуация, что контроллер домена сдох и нет возможности его удалить корректно с использованием DCPROMO, то на помощь приходит утилита NTDSUTIL.

1. Сначала удаляем контроллер домена

2. Если контроллер домена был последним в дочернем домене, то удаляем сам дочерний “потерянный” домен.

Этап №1. Удаление контроллера

  1. В командной строке введите ntdsutil и нажмите клавишу ВВОД.
  2. Введите metadata cleanup и нажмите клавишу ВВОД. Можно, кстати, сокращать команды,например, meta cl
  3. Введите команду connections и нажмите клавишу ВВОД. Это меню предназначено для подключения к серверу, на котором происходят изменения. Если текущий пользователь не обладает правами администратора, перед подключением следует указать другую учетную запись. Для этого введите команду set creds имя_доменаимя_пользователяПароль и нажмите клавишу ВВОД. В случае использования пустого пароля введите null.
  4. Введите команду connect to server имя_сервера и нажмите клавишу ВВОД. Появится сообщение о подключении к серверу. При возникновении ошибки убедитесь, что доступен контроллер домена, который используется для подключения, а текущая учетная запись обладает правами администратора на сервере. Сервер, к которому вы подключаетесь должен быть рабочим контроллером домена, а не тот который вы удаляете. Это может быть контроллер домена родительского домена, например, если вы удаляете дочерний.
    1. Примечание. Если выполняется подключение к удаляемому серверу, то при попытке его удаления (действие 15) может появиться следующее сообщение об ошибке:
      1. Ошибка 2094. Невозможно удалить объект DSA0x2094
  5. Введите команду quit и нажмите клавишу ВВОД. Появится меню Metadata Cleanup.
  6. Введите команду select operation target и нажмите клавишу ВВОД.
  7. Введите команду list domains и нажмите клавишу ВВОД. Появится список доменов леса с номерами.
  8. Введите команду select domain номер и нажмите клавишу ВВОД, где номер – номер домена, которому принадлежит удаляемый сервер. Выбранный домен используется для проверки того, является ли удаляемый сервер последним контроллером в этом домене.
  9. Введите команду list sites и нажмите клавишу ВВОД. Появится список узлов с номерами.
  10. Введите команду select site номер и нажмите клавишу ВВОД, где номер – номер узла, которому принадлежит удаляемый сервер. Появится подтверждение выбранного домена и узла.
  11. Введите команду list servers in site и нажмите клавишу ВВОД. Появится список серверов узла с номерами.
  12. Введите команду select server номер, где номер – номер удаляемого сервера. Появится подтверждение, которое содержит имя выбранного сервера, его DNS-имя и местонахождение учетной записи.
  13. Введите команду quit и нажмите клавишу ВВОД. Появится меню Metadata Cleanup.
  14. Введите команду remove selected server и нажмите клавишу ВВОД. Должно появиться сообщение об успешном удалении сервера. Появление следующего сообщения об ошибке свидетельствует о том, что объект NTDS Settings был удален из Active Directory ранее другим администратором или в результате репликации успешного удаления объекта после запуска программы DCPROMO.
  15. Введите в каждом меню команду quit и нажмите клавишу ВВОД, чтобы завершить работу с программой Ntdsutil.

Теперь надо почистить DNS. Для этого удалите записи ссылающиеся на удалённый контроллер домена:

_ldap._tcp.dc._msdcs.domain-name.com _kerberos._tcp.dc._msdcs.domain-name.com _ldap._tcp.._sites.dc._msdcs.domain-name.com _kerberos._tcp.._sites.dc._msdcs.domain-name.com

где domain-name.com домен, который содержит удаляемый контроллер.

Теперь удалим объект в FRS.

  • Откройте оснастку Active Directory Users and Computers (DSA.MSC) и выберите Advanced Features в меню View.
  • Раскройте корневой домен, зайдите в раздел System, далее File Replication Service и Domain System Volume (SYSVOL share)
  • Выделите удаляемый контроллер домена, правым щелчком выберите Delete.

Проверим объект в Active Directory Users and Computers в разделе Domain Controllers.

Если удалённый контроллер там присутствует, то удалите его правым щелчком.

Если появляется ошибка, то воспользуйтесь командой

dsrm “cn=dc-01,ou=domain controllers,dc=domain-name,dc=com”

где вместо dc-01 подставьте ваш удаляемый контроллер, а вместо dc=domain-name,dc=com свой домен.

Если вы удалили не последний контроллер в домене, то не забудьте передать FSMO роли этого удалённого контроллера другим оставшимся контроллерам. http://support.microsoft.com/kb/255504

Если вы удалили последний контроллер в дочернем домене, то, вероятно, у вас есть необходимость удалить сам дочерний домен. Переходите ко второму этапу.

Этап №2. Удаление потерянного (orphaned) домена, т.е. домена не содержащего контроллеров.

  1. В командной строке введите ntdsutil и нажмите клавишу ВВОД.
  2. Введите metadata cleanup и нажмите клавишу ВВОД. Можно, кстати, сокращать команды,например, meta cl
  3. Введите команду connections и нажмите клавишу ВВОД. Это меню предназначено для подключения к серверу, на котором происходят изменения. Если текущий пользователь не обладает правами администратора, перед подключением следует указать другую учетную запись. Для этого введите команду set creds имя_доменаимя_пользователяПароль и нажмите клавишу ВВОД. В случае использования пустого пароля введите null.
  4. Введите команду connect to server имя_сервера с ролью мастера именования доменов и нажмите клавишу ВВОД. Появится сообщение о подключении к серверу. При возникновении ошибки убедитесь, что доступен контроллер домена, который используется для подключения, а текущая учетная запись обладает правами администратора на сервере. Сервер, к которому вы подключаетесь должен быть рабочим контроллером домена, а не тот который вы удаляете. Это может быть контроллер домена родительского домена, например, если вы удаляете дочерний.
    1. Примечание. Если выполняется подключение к удаляемому серверу, то при попытке его удаления (действие 15) может появиться следующее сообщение об ошибке:
      1. Ошибка 2094. Невозможно удалить объект DSA0x2094
  5. Введите команду quit и нажмите клавишу ВВОД. Появится меню Metadata Cleanup.
  6. Введите команду select operation target и нажмите клавишу ВВОД.
  7. Введите команду list domains и нажмите клавишу ВВОД. Появится список доменов леса с номерами.
  8. Введите команду select domain номер и нажмите клавишу ВВОД, где номер – номер домена, который вы хотите удалить.
  9. Введите команду quit и нажмите клавишу ВВОД. Появится меню Metadata Cleanup.
  10. Введите команду remove selected domain и нажмите клавишу ВВОД.
  11. Введите в каждом меню команду quit и нажмите клавишу ВВОД, чтобы завершить работу с программой Ntdsutil.

Если у вас появилась ошибка

DsRemoveDsDomainW error 0x2015 The directory service can perform the requested operation only on a leaf object

То сначала нужно почистить дочерние записи в этом домене. Для этого делаем следующее:

  1. В командной строке введите ntdsutil и нажмите клавишу ВВОД.
  2. Введите domain management или partition management (зависит от версии ОС) и нажмите клавишу ВВОД. Можно сокращать,например, part man
  3. Введите команду connections и нажмите клавишу ВВОД.
  4. Введите команду connect to server имя_сервера с ролью мастера именования доменов и нажмите клавишу ВВОД.
  5. Введите команду quit и нажмите клавишу ВВОД. Появится меню domain management или partition management.
  6. Введите команду list и нажмите клавишу ВВОД. Появится список именных контекстов (NCs).

Например,

“Found 7 Naming Context(s)

0 – CN=Configuration,DC=savilltech,DC=com

1 – DC=savilltech,DC=com

2 – CN=Schema,CN=Configuration,DC=savilltech,DC=com

3 – DC=DomainDnsZones,DC=savilltech,DC=com

4 – DC=ForestDnsZones,DC=savilltech,DC=com

5 – DC=child1,DC=savilltech,DC=com

6 – DC=DomainDnsZones,DC=child1,DC=savilltech,DC=com”

Если мы пытались удалить домен 5 – DC=child1,DC=savilltech,DC=com, то у нас это не получилось, так как он содержит дочернюю запись 6 – DC=DomainDnsZones,DC=child1,DC=savilltech,DC=com.

Следовательно сейчас нам надо удалить все дочерние объекты данного домена. В данном примере нужно выполнить следующее:

7. domain management: delete NC DC=DomainDnsZones,DC=child1,DC=savilltech,dc=com

Появится что-то типа этого

“The operation was successful. The partition has been marked for removal from the enterprise. It will be removed over time in the background”.

8. Введите в каждом меню команду quit и нажмите клавишу ВВОД, чтобы завершить работу с программой Ntdsutil.

Теперь можно снова повторить удаление потерянного домена на этапе №2.

Теперь тщательно проверьте DNS на наличие записей об удаленном контроллере домена и удаленном домене. Их нужно так же зачистить.

Так же в оснастке Active Directory Sites and Services проверьте не остались ли связанные с удалённым доменом сайты и серверы. Их тоже нужно почистить правым щелчком мыши.