Как передать роли FSMO с помощью Powershell


29 июня 2019


Передача FSMO ролей через Powershell

Для работы с ролями FSMO есть несколько командлетов Powershell. Для начала узнаем на каком сервере находятся наши роли.

Для ролей в рамках домена:

Get-ADDomain | Select-Object -Property RIDMaster, PDCEmulator, InfrastructureMaster | fl

Для ролей в рамках леса:

Get-ADForest | Select-Object -Property SchemaMaster, DomainNamingMaster

Либо одной командой:

Get-ADDomainController -Filter * | Select-Object Name, Domain, Forest, OperationMasterRoles | Where-Object {$_.OperationMasterRoles}

Как узнать роли FSMO

Для передачи ролей FSMO в Powershell есть команда:

Move-ADDirectoryServerOperationMasterRole -OperationMasterRole 1,2,3 -Identity AD2

Передача роли FSMO Powershell

Где:
-OperationMasterRole - тут указывается номер FSMO роли или ее название
-Identity - куда перемещаем

Если используем номера, вот таблица сопоставления:

FSMO Powershell

В этом командлете есть так же дополнительные ключи, которые могут пригодиться:

-Credential - Если мы делаем передачу ролей FSMO под другим пользователем
-AuthType - со значением 0 т.е. Negotiate (по умолчанию) и 1 т.е. Basic
-Server - для подключения к другим экземплярам
-Force

При передаче у меня была ошибка:
Move-ADDirectoryServerOperationMasterRole : The directory service is unavailable

И она решилась ключом -Force. Так же ее получалось избежать, когда я запустил командлет находясь на другом сервере.

Если мы хотим выполнить захват через Powershell под другой учетной записью, то это делается так:

$cred = Get-Credential
Move-ADDirectoryServerOperationMasterRole -OperationMasterRole SchemaMaster -Identity AD -Verbose -Force -Credential $cred

 

...

Теги: #powershell #ad


Популярные тэги
О блоге
Этот блог представляет собой конспекты выученного материала, преобретенного опыта и лучшие практики в системном администрировании и программировании.