今日はActiveDirectoryの操作マスタ(FSMO)の設定作業について。
操作マスタ(FSMO:Flexible Single Master Operation)とは、Active Directoryのドメインコントローラの中でも特別な役割を持つドメインコントローラの事。
ドメインコントローラーはドメインコントローラー同士でドメインのディレクトリ情報を複製して持っているのでどのドメインコントローラーにアクセスしても仕事をしてくれるのですが、一部機能についてはドメインの中での整合を合わせるために、フォレストまたはドメインの単位でひとつマスタとして存在するドメインコントローラがいます。
それが操作マスター(FSMO)です。
FSMOには5つのマスタが存在します。
スキーママスタ、ドメイン名前付けマスタ、インフラストラクチャマスタ、RIDマスタ、PDCエミュレーターの5つです。これが何かはまたとして。
ドメインコントローラーのサーバーをリプレイスする時にはこの役割を他のドメインコントローラーに転送する事ができます。
今日はその転送操作の準備段階、どのドメインコントローラーが操作マスタを持っているか確認する方法について比較してみました。前置きが長くなりました。。。
今回はFSMOを転送する前に、どのドメインコントローラーにFSMOがあるか確認する方法がいくつかあるので、その操作を実際に比べてみました。
方法は色々とあって、コマンドプロンプトで確認するもよし、GUIで確認するもよし、最近はPowerShellでも確認できますね。
で、どの方法が一番使い勝手がいいのか。結論から言うとやる人それぞれなので好きな方法をとったらと思います。私が何を押すかは最後に。
一番単純なのは確認する場所さえ知っていればGUIなのかもしれませんが。。。
GUIで確認する場合はスキーママスタだけはMMCに読み込むところで一工夫要りますが他のは基本ドメインの管理ツールのある場所を右クリックするだけで操作マスタで見つけられます。ただ、GUIは今日は取り上げません。
では早速
◆コマンドプロンプトの場合
オレンジで囲ったところが入力したところ。
まずはコマンドプロンプトを起動
cmd (入力)
>
ntdsutil (入力)
ntdsutil: (表示)
>
roles (入力)
fsmo maintenance: (表示)
>
connections (入力)
server connections: (表示)
>
connect to domain dcscextest.local (入力)※.localはドメイン名
接続しました (表示)
quit (入力)して戻って
fsmo maintenance: (表示)
>
select operation target (入力)
select operation target: (表示)
>
list roles for connected server (入力)
やっとFSMOの情報出力されました。。。
ちなみに赤い下線がFSMOを持っているサーバーのFQDNです。
◆PowerShellの場合
Powershell (入力) PowerShellの起動
>
Import-Module ActiveDirectory (Enter・入力)
ActiveDirectory情報を読み込み
Get-ADForest | Select-Object DomainNamingMaster,SchemaMaster (Enter・入力)
で情報出力できました。
わずか2行でスキーママスタとドメイン名前付けマスタが表示できますね。
次に
Get-ADDomain | Select-Object InfraStructureMaster,RIDMaster,PDCEmulator
1行入力するだけでインフラストラクチャマスタ、RIDマスタ、PDCエミュレーターが表示されました。(入力する文字数は多いけど;)
まとめて出力したくてもたったの3行、しかも表示が見やすい。
ちなみにPowerShellでFSMO(操作マスタ)を転送したかったら
Move-ADDirectoryServerOperationMasterRole VCDTEST00 -OperationMasterRole InfraStructureMaster,RIDMaster,PDCEmulator,DomainNamingMaster,SchemaMaster
これだけ。実際はこれ入力した後に各マスタ実行前に確認Yesという流れはありますが簡単です。
コマンドプロンプトでも入力する手間はどちらも同じなのかもしれませんがPowerShellのほうが覚えやすい、かつ見やすい。
入力といえばTabキーを駆使すればさらに楽かもしれませんね。
今後、FSMOいじるならPowerShellがいいかな。
PowerShell、勉強しないと。
これバイブルです。