Add-Computer
Aggiungere il computer locale a un dominio o un gruppo di lavoro.
Sintassi
Domain (Impostazione predefinita)
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>]
Descrizione
Il Add-Computer cmdlet aggiunge il computer locale o i computer remoti a un dominio o a un gruppo di lavoro oppure li sposta da un dominio a un altro. Viene inoltre creato un account di dominio se il computer viene aggiunto al dominio senza un account.
È possibile usare i parametri di questo cmdlet per specificare un'unità organizzativa e il controller di dominio o per eseguire un join non sicuro.
Per ottenere i risultati del comando, usare i parametri Verbose e PassThru.
Esempio
Esempio 1: Aggiungere un computer locale a un dominio e quindi riavviare il computer
Add-Computer -DomainName Domain01 -Restart
Questo comando aggiunge il computer locale al dominio Domain01 e riavvia il computer per rendere effettiva la modifica.
Esempio 2: Aggiungere un computer locale a un gruppo di lavoro
Add-Computer -WorkgroupName WORKGROUP-A
Questo comando aggiunge il computer locale al gruppo di lavoro Workgroup-A.
Esempio 3: Aggiungere un computer locale a un dominio
Add-Computer -DomainName Domain01 -Server Domain01\DC01 -PassThru -Verbose
Questo comando aggiunge il computer locale al dominio Domain01 usando il Domain01\DC01 controller di dominio.
Il comando usa i parametri PassThru e Verbose per ottenere informazioni dettagliate sui risultati del comando.
Esempio 4: Aggiungere un computer locale a un dominio usando il parametro OUPath
Add-Computer -DomainName Domain02 -OUPath "OU=testOU,DC=domain,DC=Domain,DC=com"
Questo comando aggiunge il computer locale al dominio Domain02. Usa il parametro OUPath per specificare l'unità organizzativa per i nuovi account.
Esempio 5: Aggiungere un computer locale a un dominio usando le credenziali
$addComputerSplat = @{
ComputerName = 'Server01'
LocalCredential = 'Server01\Admin01'
DomainName = 'Domain02'
Credential = 'Domain02\Admin02'
Restart = $true
Force = $true
}
Add-Computer @addComputerSplat
Questo comando aggiunge il computer Server01 al dominio Domain02. Usa il parametro LocalCredential per specificare un account utente autorizzato a connettersi al computer Server01. Usa il parametro Credential per specificare un account utente con l'autorizzazione per aggiungere computer al dominio. Usa il parametro Restart per riavviare il computer al termine dell'operazione di join e il parametro Force per eliminare i messaggi di conferma dell'utente.
Esempio 6: Spostare un gruppo di computer in un nuovo dominio
$addComputerSplat = @{
ComputerName = 'Server01', 'Server02', 'localhost'
DomainName = 'Domain02'
LocalCredential = 'Domain01\User01'
UnjoinDomainCredential = 'Domain01\Admin01'
Credential = 'Domain02\Admin01'
Restart = $true
}
Add-Computer @addComputerSplat
Questo comando sposta i computer Server01 e Server02 e il computer locale, da Domain01 a Domain02.
Usa il parametro LocalCredential per specificare un account utente autorizzato a connettersi ai tre computer interessati. Usa il parametro UnjoinDomainCredential per specificare un account utente autorizzato a annullare la partecipazione dei computer dal dominio Domain01 e al parametro Credential per specificare un account utente che abbia l'autorizzazione per aggiungere i computer al dominio Domain02. Usa il parametro Restart per riavviare tutti e tre i computer al termine dello spostamento.
Esempio 7: Spostare un computer in un nuovo dominio e modificare il nome del computer
$addComputerSplat = @{
ComputerName = 'Server01'
DomainName = 'Domain02'
NewName = 'Server044'
Credential = 'Domain02\Admin01'
Restart = $true
}
Add-Computer @addComputerSplat
Questo comando sposta il computer Server01 nel dominio Domain02 e modifica il nome del computer in Server044.
Il comando usa le credenziali dell'utente corrente per connettersi al computer Server01 e separarsi dal dominio corrente. Usa il parametro Credential per specificare un account utente con l'autorizzazione per aggiungere il computer al dominio Domain02.
Esempio 8: Aggiungere computer elencati in un file a un nuovo dominio
$addComputerSplat = @{
ComputerName = (Get-Content Servers.txt)
DomainName = 'Domain02'
Credential = 'Domain02\Admin02'
Options = 'Win9xUpgrade'
Restart = $true
}
Add-Computer @addComputerSplat
Questo comando aggiunge i computer elencati nel Servers.txt file al dominio Domain02. Usa il parametro Options per specificare l'opzione Win9xUpgrade . Il parametro Restart riavvia tutti i computer appena aggiunti al termine dell'operazione di join.
Esempio 9: Aggiungere un computer a un dominio usando le credenziali predefinite del computer
Questo primo comando deve essere eseguito da un amministratore da un computer già aggiunto al dominio 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
Questa combinazione di comandi crea un nuovo account computer con un nome predefinito e una password di aggiunta temporanea in un dominio usando un computer aggiunto a un dominio esistente. Quindi separatamente, un computer con il nome predefinito unisce il dominio usando solo il nome del computer e la password di aggiunta temporanea. La password predefinita viene usata solo per supportare l'operazione di join e viene sostituita come parte delle normali procedure di account computer dopo che il computer ha completato l'aggiunta.
Esempio 10: Aggiungere un computer a un dominio con un nuovo nome
L'uso di questa combinazione di comandi consente di evitare più riavvii e più scritture in Active Directory scritture per lo stesso oggetto quando il computer aggiunge il dominio con il nuovo nome.
Rename-Computer -NewName "MyNewPC" -Force
$addComputerSplat = @{
DomainName = 'Contoso.com'
Credential = 'contoso\administrator'
Options = 'JoinWithNewName', 'AccountCreate'
}
Add-Computer @addComputerSplat
Parametri
-ComputerName
Specifica i computer da aggiungere a un dominio o un gruppo di lavoro. Il valore predefinito è il computer locale.
Digitare il nome NetBIOS, un indirizzo IP (Internet Protocol) o un nome di dominio completo di ogni computer remoto. Per specificare il computer locale, digitare il nome del computer, un punto (.) o "localhost".
Questo parametro non si basa sulla comunicazione remota di Windows PowerShell. È possibile utilizzare il parametro ComputerName di Add-Computer anche se il computer non è configurato per eseguire comandi remoti.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Proprietà dei parametri
| Tipo: | String[] |
| Valore predefinito: | Local computer |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | True |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Confirm
Richiede conferma prima di eseguire il cmdlet.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | cfr |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Credential
Specifica un account utente che dispone dell'autorizzazione per aggiungere computer a un nuovo dominio. Il valore predefinito è l'utente corrente.
Digitare un nome utente, ad esempio "User01" o "Domain01\User01" oppure immettere un oggetto PSCredential, ad esempio quello generato dal cmdlet Get-Credential. Se si digita un nome utente, verrà richiesta una password.
Per specificare un account utente autorizzato a rimuovere il computer dal dominio corrente, usare il parametro UnjoinDomainCredential. Per specificare un account utente autorizzato a connettersi a un computer remoto, usare il parametro LocalCredential .
Proprietà dei parametri
| Tipo: | PSCredential |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | DomainCredential |
Set di parametri
Domain
| Posizione: | Named |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
Workgroup
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-DomainName
Specifica il dominio a cui vengono aggiunti i computer. Questo parametro è obbligatorio quando si aggiunge il computer a un dominio.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | DN, Dominio |
Set di parametri
Domain
| Posizione: | 0 |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Force
Elimina la richiesta di conferma dell'utente. Senza questo parametro, Add-Computer è necessario confermare l'aggiunta di ogni computer.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-LocalCredential
Specifica un account utente autorizzato a connettersi ai computer specificati dal parametro ComputerName . Il valore predefinito è l'utente corrente.
Digitare un nome utente, ad esempio "User01" o "Domain01\User01" oppure immettere un oggetto PSCredential, ad esempio quello generato dal cmdlet Get-Credential. Se si digita un nome utente, verrà richiesta una password.
Per specificare un account utente con l'autorizzazione per aggiungere i computer a un nuovo dominio, usare il parametro Credential . Per specificare un account utente autorizzato a rimuovere i computer dal dominio corrente, usare il parametro UnjoinDomainCredential .
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Proprietà dei parametri
| Tipo: | PSCredential |
| Valore predefinito: | Current user |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-NewName
Specifica un nuovo nome per il computer nel nuovo dominio. Questo parametro è valido solo quando un computer viene aggiunto o spostato.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | True |
| Valore dagli argomenti rimanenti: | False |
-Options
Specifica le opzioni avanzate per l'operazione Add-Computer di join. Immettere uno o più valori delimitati da virgole in una stringa.
I valori accettabili per questo parametro sono:
AccountCreate: crea un account di dominio. Il
Add-Computercmdlet crea automaticamente un account di dominio quando aggiunge un computer a un dominio. Questa opzione è inclusa per completezza.Win9XUpgrade: indica che l'operazione di join fa parte di un aggiornamento del sistema operativo Windows.
UnsecuredJoin: esegue un join non protetto. Per richiedere un join non protetto, usare il parametro Unsecure o questa opzione. Se si vuole passare una password del computer, è necessario usare questa opzione in combinazione con
PasswordPassl'opzione .PasswordPass: imposta la password del computer sul valore del parametro Credential(DomainCredential) dopo l'esecuzione di un join non protetto. Questa opzione indica anche che il valore del parametro Credential (DomainCredential) è una password del computer, non una password utente. Questa opzione è valida solo quando viene specificata l'opzione
UnsecuredJoin. Quando si usa questa opzione, le credenziali fornite al-Credentialparametro devono avere un nome utente Null.JoinWithNewName: rinomina il nome del computer nel nuovo dominio con il nome specificato dal parametro NewName . Quando si usa il parametro NewName , questa opzione viene impostata automaticamente. Questa opzione è progettata per essere usata con il cmdlet Rename-Computer. Se si utilizza il
Rename-Computercmdlet per rinominare il computer, ma non riavviare il computer per rendere effettiva la modifica, è possibile utilizzare questo parametro per aggiungere il computer a un dominio con il nuovo nome.JoinReadOnly: usa un account computer esistente per aggiungere il computer a un controller di dominio di sola lettura. L'account computer deve essere aggiunto all'elenco consentito per i criteri di replica delle password e la password dell'account deve essere replicata nel controller di dominio di sola lettura prima dell'operazione di aggiunta.
InstallInvoke: imposta i flag di creazione (0x2) ed eliminazione (0x4) del parametro FJoinOptions del metodo JoinDomainOrWorkgroup . Per altre informazioni sul metodo JoinDomainOrWorkgroup , vedere Metodo JoinDomainOrWorkgroup della classe Win32_ComputerSystem. Per altre informazioni su queste opzioni, vedere Funzione NetJoinDomain.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Proprietà dei parametri
| Tipo: | JoinOptions |
| Valore predefinito: | None |
| Valori accettati: | AccountCreate, Win9XUpgrade, UnsecuredJoin, PasswordPass, DeferSPNSet, JoinWithNewName, JoinReadOnly, InstallInvoke |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
Domain
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-OUPath
Specifica un'unità organizzativa per l'account di dominio. Immettere il nome distinto completo dell'unità organizzativa racchiuso tra virgolette. Il valore predefinito è l'unità organizzativa predefinita per gli oggetti computer del dominio.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | OU |
Set di parametri
Domain
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-PassThru
Restituisce un oggetto che rappresenta l'elemento con cui si sta lavorando. Per impostazione predefinita, questo cmdlet non genera alcun output.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Restart
Riavvia i computer aggiunti al dominio o al gruppo di lavoro. Un riavvio è spesso necessario per rendere effettiva la modifica.
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Server
Specifica il nome di un controller di dominio che aggiunge il computer al dominio. Immettere il nome in formato FQDN. Per impostazione predefinita, non viene specificato alcun controller di dominio.
A partire da agosto 2024, la protezione avanzata per l'aggiunta a un dominio richiede l'uso del nome di dominio completo del controller di dominio. Ad esempio: DC1.contoso.com. Per altre informazioni, vedere Modifiche alla protezione avanzata dell'aggiunta a un dominio NetJoin.
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Controller di dominio |
Set di parametri
Domain
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-UnjoinDomainCredential
Specifica un account utente che dispone dell'autorizzazione per rimuovere i computer dai domini correnti. Il valore predefinito è l'utente corrente.
Digitare un nome utente, ad esempio "User01" o "Domain01\User01" oppure immettere un oggetto PSCredential, ad esempio quello generato dal cmdlet Get-Credential. Se si digita un nome utente, verrà richiesta una password.
Usare questo parametro quando si spostano computer in un dominio diverso. Per specificare un account utente con l'autorizzazione per l'aggiunta al nuovo dominio, usare il parametro Credential . Per specificare un account utente autorizzato a connettersi a un computer remoto, usare il parametro LocalCredential .
Questo parametro è stato introdotto in Windows PowerShell 3.0.
Proprietà dei parametri
| Tipo: | PSCredential |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
Domain
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-Unsecure
Esegue un join non sicuro al dominio specificato.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
Set di parametri
Domain
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WhatIf
Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.
Proprietà dei parametri
| Tipo: | SwitchParameter |
| Valore predefinito: | False |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | Wi |
Set di parametri
(All)
| Posizione: | Named |
| Obbligatorio: | False |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
-WorkgroupName
Specifica il nome di un gruppo di lavoro a cui vengono aggiunti i computer. Il valore predefinito è "WORKGROUP".
Proprietà dei parametri
| Tipo: | String |
| Valore predefinito: | None |
| Supporta i caratteri jolly: | False |
| DontShow: | False |
| Alias: | WGN |
Set di parametri
Workgroup
| Posizione: | 0 |
| Obbligatorio: | True |
| Valore dalla pipeline: | False |
| Valore dalla pipeline in base al nome della proprietà: | False |
| Valore dagli argomenti rimanenti: | False |
CommonParameters
Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.
Input
String
È possibile inviare tramite pipe nomi di computer e nuovi nomi al Add-Computer cmdlet .
Output
ComputerChangeInfo
Quando si utilizza il parametro PassThru, Add-Computer restituisce un oggetto ComputerChangeInfo.
In caso contrario, questo cmdlet non genera alcun output.
Note
- In Windows PowerShell 2.0 il parametro Server di
Add-Computerha esito negativo anche quando il server è presente. In Windows PowerShell 3.0 l'implementazione del parametro Server viene modificata in modo che funzioni in modo affidabile.