Add-Computer
ローカル コンピューターをドメインまたはワークグループに追加します。
構文
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>]
Add-Computer
[-ComputerName <String[]>]
[-LocalCredential <PSCredential>]
[-Credential <PSCredential>]
[-WorkgroupName] <String>
[-Restart]
[-PassThru]
[-NewName <String>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Add-Computer
コマンドレットは、ローカル コンピューターまたはリモート コンピューターをドメインまたはワークグループに追加するか、ドメイン間で移動します。 また、アカウントなしでドメインに追加されたコンピューターのドメイン アカウントも作成します。
このコマンドレットのパラメーターを使用して、組織単位 (OU) およびドメイン コントローラーを指定したり、セキュリティで保護されていない参加を実行したりすることができます。
コマンドの結果を取得するには、 Verbose パラメーターと PassThru パラメーターを使用します。
例
例 1: ドメインにローカル コンピューターを追加し、コンピューターを再起動する
Add-Computer -DomainName Domain01 -Restart
このコマンドは、ローカル コンピューターを Domain01 ドメインに追加し、コンピューターを再起動して変更を有効にします。
例 2: ワークグループにローカル コンピューターを追加する
Add-Computer -WorkgroupName WORKGROUP-A
このコマンドは、ローカル コンピューターを Workgroup-A ワークグループに追加します。
例 3: ドメインにローカル コンピューターを追加する
Add-Computer -DomainName Domain01 -Server Domain01\DC01 -PassThru -Verbose
このコマンドは、 Domain01\DC01
ドメイン コントローラーを使用して、ローカル コンピューターを Domain01 ドメインに追加します。
コマンドは、 PassThru パラメーターと Verbose パラメーターを使用して、コマンドの結果に関する詳細情報を取得します。
例 4: OUPath パラメーターを使用してローカル コンピューターをドメインに追加する
Add-Computer -DomainName Domain02 -OUPath "OU=testOU,DC=domain,DC=Domain,DC=com"
このコマンドは、ローカル コンピューターを Domain02 ドメインに追加します。 OUPath パラメーターを使用して、新しいアカウントの組織単位を指定します。
例 5: 資格情報を使用してローカル コンピューターをドメインに追加する
$addComputerSplat = @{
ComputerName = 'Server01'
LocalCredential = 'Server01\Admin01'
DomainName = 'Domain02'
Credential = 'Domain02\Admin02'
Restart = $true
Force = $true
}
Add-Computer @addComputerSplat
このコマンドは、Server01 コンピューターを Domain02 ドメインに追加します。 LocalCredential パラメーターを使用して、Server01 コンピューターに接続するアクセス許可を持つユーザー アカウントを指定します。 Credential パラメーターを使用して、コンピューターをドメインに参加させるアクセス許可を持つユーザー アカウントを指定します。 Restart パラメーターを使用して、参加操作の完了後にコンピューターを再起動し、Force パラメーターを使用してユーザー確認メッセージを抑制します。
例 6: コンピューターのグループを新しいドメインに移動する
$addComputerSplat = @{
ComputerName = 'Server01', 'Server02', 'localhost'
DomainName = 'Domain02'
LocalCredential = 'Domain01\User01'
UnjoinDomainCredential = 'Domain01\Admin01'
Credential = 'Domain02\Admin01'
Restart = $true
}
Add-Computer @addComputerSplat
このコマンドは、Server01、Server02、およびローカル コンピューターを Domain01 から Domain02 に移動します。
LocalCredential パラメーターを使用して、影響を受ける 3 台のコンピューターに接続するアクセス許可を持つユーザー アカウントを指定します。 UnjoinDomainCredential パラメーターを使用して、Domain01 ドメインからコンピューターの参加を解除するアクセス許可を持つユーザー アカウントと Credential パラメーターを指定して、コンピューターを Domain02 ドメインに参加させるアクセス許可を持つユーザー アカウントを指定します。 Restart パラメーターを使用して、移動が完了した後に 3 台のコンピューターをすべて再起動します。
例 7: コンピューターを新しいドメインに移動し、コンピューターの名前を変更する
$addComputerSplat = @{
ComputerName = 'Server01'
DomainName = 'Domain02'
NewName = 'Server044'
Credential = 'Domain02\Admin01'
Restart = $true
}
Add-Computer @addComputerSplat
このコマンドは、Server01 コンピューターを Domain02 に移動し、コンピューター名を Server044 に変更します。
Server01 コンピューターへの接続には現在のユーザーの資格情報を使用し、このコンピューターを現在のドメインから削除します。 Credential パラメーターを使用して、コンピューターを Domain02 ドメインに参加させるアクセス許可を持つユーザー アカウントを指定します。
例 8: ファイルに一覧表示されているコンピューターを新しいドメインに追加する
$addComputerSplat = @{
ComputerName = (Get-Content Servers.txt)
DomainName = 'Domain02'
Credential = 'Domain02\Admin02'
Options = 'Win9xUpgrade'
Restart = $true
}
Add-Computer @addComputerSplat
このコマンドは、 Servers.txt
ファイルに一覧表示されているコンピューターを Domain02 ドメインに追加します。 Options パラメーターを使用して、Win9xUpgrade オプションを指定します。 Restart パラメーターは、結合操作の完了後に新しく追加されたすべてのコンピューターを再起動します。
例 9: 定義済みのコンピューター資格情報を使用してコンピューターをドメインに追加する
この最初のコマンドは、ドメイン Domain03
に既に参加しているコンピューターから管理者が実行する必要があります。
$newADComputerSplat = @{
Name = "Server02"
AccountPassword = (ConvertTo-SecureString -String 'TempJoinPA$$' -AsPlainText -Force)
}
New-ADComputer @newADComputerSplat
# Then this command is run from `Server02` which is not yet domain-joined:
$joinCred = New-Object pscredential -ArgumentList ([pscustomobject]@{
UserName = $null
Password = (ConvertTo-SecureString -String 'TempJoinPA$$' -AsPlainText -Force)[0]
})
$addComputerSplat = @{
DomainName = "Domain03"
Options = 'UnsecuredJoin', 'PasswordPass'
Credential = $joinCred
}
Add-Computer @addComputerSplat
このコマンドの組み合わせにより、既存のドメインに参加しているコンピューターを使用して、ドメインに定義済みの名前と一時参加パスワードを持つ新しいコンピューター アカウントが作成されます。 その後、定義済みの名前を持つコンピューターは、コンピューター名と一時参加パスワードのみを使用してドメインに参加します。 定義済みのパスワードは、参加操作をサポートするためにのみ使用され、コンピューターが参加を完了した後、通常のコンピューター アカウントの手順の一部として置き換えられます。
例 10: 新しい名前のドメインにコンピューターを追加する
このコマンドの組み合わせを使用すると、コンピューターが新しい名前でドメインに参加するときに、同じオブジェクトに対して複数の再起動と Active Directory 書き込みの複数回の書き込みを回避できます。
Rename-Computer -NewName "MyNewPC" -Force
$addComputerSplat = @{
DomainName = 'Contoso.com'
Credential = 'contoso\administrator'
Options = 'JoinWithNewName', 'AccountCreate'
}
Add-Computer @addComputerSplat
パラメーター
-ComputerName
ドメインまたはワークグループに追加するコンピューターを指定します。 既定値はローカル コンピューターです。
各リモート コンピューターの NetBIOS 名、インターネット プロトコル (IP) アドレス、または完全修飾ドメイン名を入力します。 ローカル コンピューターを指定するには、コンピューター名、ドット (.
)、または "localhost" を入力します。
このパラメーターは、Windows PowerShell リモート処理に依存しません。 コンピューターがリモート コマンドを実行するように構成されていない場合でも、Add-Computer
の ComputerName パラメーターを使用できます。
このパラメーターは、Windows PowerShell 3.0 で導入されました。
型: | String[] |
配置: | Named |
規定値: | Local computer |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットの実行前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Credential
新しいドメインにコンピューターを追加するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。
"User01" や "Domain01\User01" などのユーザー名を入力するか、Get-Credential
コマンドレットによって生成されたものなど、PSCredential オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
現在のドメインからコンピューターを削除するアクセス許可を持つユーザー アカウントを指定するには、 UnjoinDomainCredential パラメーターを使用します。 リモート コンピューターに接続するアクセス許可を持つユーザー アカウントを指定するには、 LocalCredential パラメーターを使用します。
型: | PSCredential |
Aliases: | DomainCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-DomainName
コンピューターが追加されるドメインを指定します。 このパラメーターは、コンピューターをドメインに追加する場合に必要です。
型: | String |
Aliases: | DN, Domain |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Force
ユーザーへの確認メッセージを表示しないようにします。 このパラメーターを指定しない場合、 Add-Computer
は各コンピューターの追加を確認する必要があります。
このパラメーターは、Windows PowerShell 3.0 で導入されました。
型: | SwitchParameter |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-LocalCredential
ComputerName パラメーターで指定されたコンピューターに接続するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。
"User01" や "Domain01\User01" などのユーザー名を入力するか、Get-Credential
コマンドレットによって生成されたものなど、PSCredential オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
コンピューターを新しいドメインに追加するアクセス許可を持つユーザー アカウントを指定するには、 Credential パラメーターを使用します。 コンピューターを現在のドメインから削除するアクセス許可を持つユーザー アカウントを指定するには、 UnjoinDomainCredential パラメーターを使用します。
このパラメーターは、Windows PowerShell 3.0 で導入されました。
型: | PSCredential |
配置: | Named |
規定値: | Current user |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-NewName
新しいドメインでのコンピューターの新しい名前を指定します。 このパラメーターは、1 つのコンピューターが追加または移動されている場合にのみ有効です。
このパラメーターは、Windows PowerShell 3.0 で導入されました。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Options
Add-Computer
結合操作の詳細オプションを指定します。 1 つ以上の値をコンマ区切りの文字列として入力します。
このパラメーターの有効値は、次のとおりです。
AccountCreate: ドメイン アカウントを作成します。
Add-Computer
コマンドレットは、コンピューターをドメインに追加するときに、ドメイン アカウントを自動的に作成します。 このオプションは、完全性を高める目的で含まれています。Win9XUpgrade: 参加操作が Windows オペレーティング システムのアップグレードの一部であることを示します。
UnsecuredJoin: セキュリティで保護されていない結合を実行します。 セキュリティで保護されていない結合を要求するには、 Unsecure パラメーターまたはこのオプションを使用します。 マシンパスワードを渡す場合は、このオプションを
PasswordPass
オプションと組み合わせて使用する必要があります。PasswordPass: セキュリティで保護されていない結合を実行した後、コンピューターのパスワードを Credential(DomainCredential) パラメーターの値に設定します。 また、このオプションは、 Credential (DomainCredential) パラメーターの値が、ユーザー パスワードではなくマシン パスワードであることを示します。 このオプションは、
UnsecuredJoin
オプションが指定されている場合にのみ有効です。 このオプションを使用する場合、-Credential
パラメーターに指定された資格情報 must のユーザー名は null になります。JoinWithNewName: 新しいドメイン内のコンピューター名の名前を、 NewName パラメーターで指定された名前に変更します。 NewName パラメーターを使用すると、このオプションが自動的に設定されます。 このオプションは、Rename-Computer コマンドレットで使用するように設計されています。
Rename-Computer
コマンドレットを使用してコンピューターの名前を変更しても、コンピューターを再起動して変更を有効にしない場合は、このパラメーターを使用して、コンピューターを新しい名前のドメインに参加させることができます。JoinReadOnly: 既存のコンピューター アカウントを使用して、コンピューターを読み取り専用ドメイン コントローラーに参加させます。 パスワード レプリケーション ポリシーの許可リストにマシン アカウントを追加し、参加操作の前にアカウント パスワードを読み取り専用ドメイン コントローラーにレプリケートする必要があります。
InstallInvoke: JoinDomainOrWorkgroup メソッドの FJoinOptions パラメーターの作成 (0x2) フラグと delete (0x4) フラグを設定します。 JoinDomainOrWorkgroup メソッドの詳細については、「Win32_ComputerSystem クラスJoinDomainOrWorkgroup メソッドを参照してください。 これらのオプションの詳細については、「 NetJoinDomain 関数を参照してください。
このパラメーターは Windows PowerShell 3.0 で導入されました。
型: | JoinOptions |
指定可能な値: | AccountCreate, Win9XUpgrade, UnsecuredJoin, PasswordPass, DeferSPNSet, JoinWithNewName, JoinReadOnly, InstallInvoke |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-OUPath
ドメイン アカウントの組織単位 (OU) を指定します。 OU の完全識別名を引用符で囲んで入力します。 既定値は、ドメイン内で使用されるコンピューター オブジェクトの既定の OU です。
型: | String |
Aliases: | OU |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-PassThru
作業中の項目を表すオブジェクトを返します。 既定では、このコマンドレットによる出力はありません。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Restart
ドメインまたはワークグループに追加されたコンピューターを再起動します。 多くの場合、変更を有効にするには再起動が必要です。
このパラメーターは、Windows PowerShell 3.0 で導入されました。
型: | SwitchParameter |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Server
ドメインにコンピューターを追加するドメイン コントローラーの名前を指定します。 ドメイン名\コンピューター名の形式で入力します。 既定では、ドメイン コントローラーは指定されません。
型: | String |
Aliases: | DC |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-UnjoinDomainCredential
コンピューターを現在のドメインから削除するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。
"User01" や "Domain01\User01" などのユーザー名を入力するか、Get-Credential
コマンドレットによって生成されたものなど、PSCredential オブジェクトを入力します。 ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
このパラメーターは、コンピューターを別のドメインに移動するときに使用します。 新しいドメインに参加するアクセス許可を持つユーザー アカウントを指定するには、 Credential パラメーターを使用します。 リモート コンピューターに接続するアクセス許可を持つユーザー アカウントを指定するには、 LocalCredential パラメーターを使用します。
このパラメーターは、Windows PowerShell 3.0 で導入されました。
型: | PSCredential |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Unsecure
指定されたドメインへのセキュリティで保護されていない参加を行います。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WorkgroupName
コンピューターを追加するワークグループの名前を指定します。 既定値は "WORKGROUP" です。
型: | String |
Aliases: | WGN |
配置: | 0 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
コンピューター名と新しい名前を Add-Computer
コマンドレットにパイプできます。
出力
PassThru パラメーターを使用すると、Add-Computer
は ComputerChangeInfo オブジェクトを返します。
それ以外の場合、このコマンドレットによる出力はありません。
メモ
- Windows PowerShell 2.0 では、サーバーが存在する場合でも、
Add-Computer
の Server パラメーターは失敗します。 Windows PowerShell 3.0 では、 Server パラメーターの実装が変更され、確実に動作します。
関連リンク
PowerShell