Add-Computer
ローカル コンピューターをドメインまたはワークグループに追加します。
構文
Domain (既定)
Add-Computer
[-DomainName] <String>
-Credential <PSCredential>
[-ComputerName <String[]>]
[-LocalCredential <PSCredential>]
[-UnjoinDomainCredential <PSCredential>]
[-OUPath <String>]
[-Server <String>]
[-Unsecure]
[-Options <JoinOptions>]
[-Restart]
[-PassThru]
[-NewName <String>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Workgroup
Add-Computer
[-WorkgroupName] <String>
[-ComputerName <String[]>]
[-LocalCredential <PSCredential>]
[-Credential <PSCredential>]
[-Restart]
[-PassThru]
[-NewName <String>]
[-Force]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
説明
Add-Computer コマンドレットは、ローカル コンピューターまたはリモート コンピューターをドメインまたはワークグループに追加するか、ドメイン間で移動します。 また、コンピューターがアカウントなしでドメインに追加された場合は、ドメイン アカウントも作成されます。
このコマンドレットのパラメーターを使用して、組織単位 (OU) とドメイン コントローラーを指定したり、セキュリティで保護されていない結合を実行したりできます。
コマンドの結果を取得するには、
例
例 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 ドメインに追加します。
例 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 パラメーターを使用できます。
このパラメーターは、Windows PowerShell 3.0 で導入されています。
パラメーターのプロパティ
| 型: | String[] |
| 規定値: | Local computer |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | True |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | cf |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Credential
コンピューターを新しいドメインに参加させるアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。
"User01" や "Domain01\User01" などのユーザー名を入力するか、PSCredential オブジェクト (Get-Credential コマンドレットによって生成されたものなど) を入力します。 ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
コンピューターを現在のドメインから削除するアクセス許可を持つユーザー アカウントを指定するには、UnjoinDomainCredential パラメーターを使用します。 リモート コンピューターに接続するアクセス許可を持つユーザー アカウントを指定するには、LocalCredential パラメーターを使用します。
パラメーターのプロパティ
| 型: | PSCredential |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | DomainCredential |
パラメーター セット
Domain
| 配置: | Named |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
Workgroup
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-DomainName
コンピューターを追加するドメインを指定します。 このパラメーターは、コンピューターをドメインに追加するときに必要です。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | DN, ドメイン |
パラメーター セット
Domain
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Force
ユーザー確認プロンプトを非表示にします。 このパラメーターを指定しない場合、Add-Computer は各コンピューターの追加を確認する必要があります。
このパラメーターは、Windows PowerShell 3.0 で導入されています。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-LocalCredential
ComputerName パラメーターで指定されたコンピューターに接続するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。
"User01" や "Domain01\User01" などのユーザー名を入力するか、PSCredential オブジェクト (Get-Credential コマンドレットによって生成されたものなど) を入力します。 ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
コンピューターを新しいドメインに追加するアクセス許可を持つユーザー アカウントを指定するには、Credential パラメーターを使用します。 コンピューターを現在のドメインから削除する権限を持つユーザー アカウントを指定するには、UnjoinDomainCredential パラメーターを使用します。
このパラメーターは、Windows PowerShell 3.0 で導入されています。
パラメーターのプロパティ
| 型: | PSCredential |
| 規定値: | Current user |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-NewName
新しいドメイン内のコンピューターの新しい名前を指定します。 このパラメーターは、1 台のコンピューターが追加または移動されている場合にのみ有効です。
このパラメーターは、Windows PowerShell 3.0 で導入されています。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | True |
| 残りの引数からの値: | False |
-Options
Add-Computer結合操作の詳細オプションを指定します。 コンマ区切りの文字列に 1 つ以上の値を入力します。
このパラメーターに使用できる値は次のとおりです。
AccountCreate: ドメイン アカウントを作成します。
Add-Computerコマンドレットは、コンピューターをドメインに追加するときに、ドメイン アカウントを自動的に作成します。 このオプションは、完全性を高める目的で含まれています。Win9XUpgrade: 参加操作が Windows オペレーティング システムのアップグレードの一部であることを示します。
UnsecuredJoin: セキュリティで保護されていない結合を実行します。 セキュリティで保護されていない結合を要求するには、セキュリティで保護されていない パラメーターまたはこのオプションを使用します。 マシンパスワードを渡す場合は、このオプションを
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 |
| 規定値: | None |
| 指定可能な値: | AccountCreate, Win9XUpgrade, UnsecuredJoin, PasswordPass, DeferSPNSet, JoinWithNewName, JoinReadOnly, InstallInvoke |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
Domain
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-OUPath
ドメイン アカウントの組織単位 (OU) を指定します。 OU の完全な識別名を引用符で囲んで入力します。 既定値は、ドメイン内のマシン オブジェクトの既定の OU です。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | OU |
パラメーター セット
Domain
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-PassThru
作業中のアイテムを表すオブジェクトを返します。 既定では、このコマンドレットは出力を生成しません。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Restart
ドメインまたはワークグループに追加されたコンピューターを再起動します。 多くの場合、変更を有効にするには再起動が必要です。
このパラメーターは、Windows PowerShell 3.0 で導入されています。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Server
コンピューターをドメインに追加するドメイン コントローラーの名前を指定します。 FQDN 形式で名前を入力します。 既定では、ドメイン コントローラーは指定されません。
2024 年 8 月以降、ドメイン参加のセキュリティ強化には、ドメイン コントローラーの FQDN を使用する必要があります。 たとえば、 DC1.contoso.comと指定します。 詳細については、「 NetJoin ドメイン参加の強化の変更」を参照してください。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | DC |
パラメーター セット
Domain
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-UnjoinDomainCredential
コンピューターを現在のドメインから削除するアクセス許可を持つユーザー アカウントを指定します。 既定値は現在のユーザーです。
"User01" や "Domain01\User01" などのユーザー名を入力するか、PSCredential オブジェクト (Get-Credential コマンドレットによって生成されたものなど) を入力します。 ユーザー名を入力すると、パスワードの入力を促すメッセージが表示されます。
コンピューターを別のドメインに移動する場合は、このパラメーターを使用します。 新しいドメインに参加するアクセス許可を持つユーザー アカウントを指定するには、Credential パラメーターを使用します。 リモート コンピューターに接続するアクセス許可を持つユーザー アカウントを指定するには、LocalCredential パラメーターを使用します。
このパラメーターは、Windows PowerShell 3.0 で導入されています。
パラメーターのプロパティ
| 型: | PSCredential |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
Domain
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-Unsecure
指定したドメインへの安全でない参加を実行します。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
パラメーター セット
Domain
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
パラメーターのプロパティ
| 型: | SwitchParameter |
| 規定値: | False |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | ウィスコンシン |
パラメーター セット
(All)
| 配置: | Named |
| 必須: | False |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
-WorkgroupName
コンピューターを追加するワークグループの名前を指定します。 既定値は "WORKGROUP" です。
パラメーターのプロパティ
| 型: | String |
| 規定値: | None |
| ワイルドカードのサポート: | False |
| DontShow: | False |
| Aliases: | WGN |
パラメーター セット
Workgroup
| 配置: | 0 |
| 必須: | True |
| パイプラインからの値: | False |
| プロパティ名別のパイプラインからの値: | False |
| 残りの引数からの値: | False |
CommonParameters
このコマンドレットでは、一般的なパラメーター -Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction、-WarningVariable の各パラメーターがサポートされています。 詳細については、about_CommonParametersを参照してください。
入力
String
コンピューター名と新しい名前を Add-Computer コマンドレットにパイプできます。
出力
ComputerChangeInfo
PassThru パラメーターを使用すると、Add-Computer は ComputerChangeInfo オブジェクトを返します。
それ以外の場合、このコマンドレットは出力を生成しません。
メモ
- Windows PowerShell 2.0 では、 の
Add-Computerパラメーターは、サーバーが存在する場合でも失敗します。 Windows PowerShell 3.0 では、Server パラメーターの実装が変更され、確実に動作します。