Active Directory の参加方法は主にGUI操作で行っていることが多いです。
GUIだとコンピュータ数台をActive Directory ドメインに参加させるのは簡単ですし便利です。
しかし、コンピュータ台数が多い場合はどうでしょう。たとえば、1000台のコンピュータをドメインに参加させるとなると結構な手間がかかります。
このような場合には「Powershell コマンドを用いての Active Directory ドメイン参加する」のがすごく便利です。
今回は、Powershell コマンドレット(Add-Computer コマンドレット)を用いたドメイン参加の方法を紹介します。
Add-Computer コマンドの機能
ドメイン参加コマンドレットは、”Add-Computer” を利用します。
このコマンドレットは、ローカルコンピュータをドメイン参加させたり、別のローカルグループへ参加させたりできます。
「別のローカルグループへ参加」というのは、「現在のローカルグループから別のローカルグループへ変更する」ということです。
オプションがいろいろあるので、「指定のOUへ格納」「コンピュータを再起動」といった簡単なこともできます。
コマンドおよびオプション
Add-Computer [-ComputerName <String[]>] [-LocalCredential <PSCredential>] [-UnjoinDomainCredential <PSCredential>] -Credential <PSCredential> [-DomainName] <String> [-OUPath <String>] [-Server <String>] [-Unsecure] [-Options <JoinOptions>] [-Restart] [-PassThru] [-NewName <String>] [-Force] [-WhatIf] [-Confirm] [<CommonParameters>] |
コマンドを使ってドメイン参加してみる
コマンドの使い方は「Powershellを管理者として実行」します。
ターミナル内で以下のようにコマンド入力し、参加させたいドメイン名を指定するだけです。
パターン1
Get-ADGroupMember -Identity <グループ名> | Select-Object name |
これだと、ドメインアカウント入力やパスワード入力やら手作業があり、GUIと大差ないですね。
パターン2
Add-Computer -DomainName <ドメイン名> -Credential <ドメイン参加用アカウント> -PassThru -Verbose |
あらかじめドメイン参加用アカウントがセットされた状態で認証画面がでてきます。
パスワード入力することでドメイン参加します。また、-PassThru -Verbose オプションで詳細が表示されます。
コンピュータは手動で再起動します。
パターン3
Add-Computer -DomainName <ドメイン名> -NewName <新しいホスト名> -Credential <認証情報> -Restart -Force |
こちらはバッチ処理の際に便利です。バッチ処理用にあらかじめ「ドメイン名」「ドメイン管理者などのドメイン参加の認証情報」を入れておきます。
コンピュータの展開時にはホスト名が任意の文字列になっています。ホスト名を変更してOS再起動してもよいのですが、いきなり新しいホスト名でドメイン参加させることもできます。
ドメイン参加したらコンピュータは自動的に再起動します。
まとめ
クライアントPCの大量展開時にはすこしでも手間を省くといった工夫が必要となってきます。
作業1分といっても1日に100台とか作業するとなると、100分となって結構な負担になっていますし、作業ミスの原因にもなってしまいます。
Windowsコンピュータの展開にはドメイン参加することが多いと思いますので、コマンドを利用したドメイン参加することで少しでも作業が楽になればと思います。