repadmin /replicate 複製先DC名 複製元DC名 DC=example,DC=com
Active Directoryでは,複数のドメイン・コントローラ(DC)間で複製し合って,オブジェクトの情報を同期しています。この複製を手動で実行するには,通常は管理ツールの「Active Directoryサイトとサービス」というスナップインから「今すぐ同期」を実行します。ですが,サイト間の複製の際には図1のようなメッセージが出るだけで,同期が正常に完了したかどうかを,メッセージからではわかりません。このようなときには,repadminコマンドのrepadmin /replicateサブコマンドを使います。この方法は,同期作業をコマンドから実行させたいような場合に有効です。
具体的には,ドメイン・コントローラ上から接続オブジェクトがある複製パートナーのドメイン・コントローラに対して,以下のようにrepadmin /replicateサブコマンドを実行します(図2)。
repadmin /replicate 複製先DC名 複製元DC名 DC=example,DC=com
このコマンドは,複製元DCから複製先DCに向かって,DC=Example,DC=comドメイン・パーティション上の差分情報を複製する。なお,パーティション内のすべての情報を複製させたい場合は,以下のように/fullオプションを加えて実行します(図3)。
repadmin /replicate 複製先DC名 複製元DC名 DC=example,DC=com /full
相手先のドメイン・コントローラがWANなどの遅い回線の先にある場合,コマンドで同期を実行しても完了に時間がかかることがあります。もしバッチ・プログラムの中でrepadminコマンドを実行するときに,コマンドの完了を待たずに次のコマンドが実行したい場合は,以下のように非同期オプションの/asyncを加えます(図4)。ただし,このオプションを使ったときには正常に複製ができたかどうか確認することができないので,注意が必要です。
repadmin /replicate 複製先DC名 複製元DC名 DC=example,DC=com /async