Share via


New-SCGuestOSProfile

Crea un profilo del sistema operativo guest da usare in VMM.

Sintassi

New-SCGuestOSProfile
   [-Shielded <Boolean>]
   [-GuiRunOnceCommands <String[]>]
   [-MergeAnswerFile <Boolean>]
   [-AnswerFile <Script>]
   [-OperatingSystem <OperatingSystem>]
   [-VMMServer <ServerConnection>]
   [-Name] <String>
   [-Description <String>]
   [-FullName <String>]
   [-OrganizationName <String>]
   [-ComputerName <String>]
   [-ProductKey <String>]
   [-LocalAdministratorCredential <VMMCredential>]
   [-TimeZone <Int32>]
   [-RemoveServerFeatures]
   [-GuestOSProfile <GuestOSProfile>]
   [-Owner <String>]
   [-UserRole <UserRole>]
   [-AutoLogonCredential <RunAsAccount>]
   [-AutoLogonCount <UInt32>]
   [-DisableAutoLogon]
   [-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
   [-DomainJoinOrganizationalUnit <String>]
   [-RemoveDomainJoinOrganizationalUnit]
   [-LinuxDomainName <String>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
New-SCGuestOSProfile
   [-Shielded <Boolean>]
   [-GuiRunOnceCommands <String[]>]
   [-MergeAnswerFile <Boolean>]
   [-AnswerFile <Script>]
   [-OperatingSystem <OperatingSystem>]
   [-LinuxAdministratorSSHKey <SSHKey>]
   [-VMMServer <ServerConnection>]
   [-Name] <String>
   [-Description <String>]
   [-FullName <String>]
   [-OrganizationName <String>]
   [-ComputerName <String>]
   [-ProductKey <String>]
   [-LocalAdministratorCredential <VMMCredential>]
   [-TimeZone <Int32>]
   [-RemoveServerFeatures]
   [-GuestOSProfile <GuestOSProfile>]
   [-Owner <String>]
   [-UserRole <UserRole>]
   [-AutoLogonCredential <RunAsAccount>]
   [-AutoLogonCount <UInt32>]
   [-DisableAutoLogon]
   [-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
   [-DomainJoinOrganizationalUnit <String>]
   [-RemoveDomainJoinOrganizationalUnit]
   [-LinuxDomainName <String>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
New-SCGuestOSProfile
   [-Shielded <Boolean>]
   [-GuiRunOnceCommands <String[]>]
   [-MergeAnswerFile <Boolean>]
   [-AnswerFile <Script>]
   [-OperatingSystem <OperatingSystem>]
   [-LinuxAdministratorSSHKeyString <String>]
   [-VMMServer <ServerConnection>]
   [-Name] <String>
   [-Description <String>]
   [-FullName <String>]
   [-OrganizationName <String>]
   [-ComputerName <String>]
   [-ProductKey <String>]
   [-LocalAdministratorCredential <VMMCredential>]
   [-TimeZone <Int32>]
   [-RemoveServerFeatures]
   [-GuestOSProfile <GuestOSProfile>]
   [-Owner <String>]
   [-UserRole <UserRole>]
   [-AutoLogonCredential <RunAsAccount>]
   [-AutoLogonCount <UInt32>]
   [-DisableAutoLogon]
   [-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
   [-DomainJoinOrganizationalUnit <String>]
   [-RemoveDomainJoinOrganizationalUnit]
   [-LinuxDomainName <String>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
New-SCGuestOSProfile
   [-Shielded <Boolean>]
   [-GuiRunOnceCommands <String[]>]
   [-MergeAnswerFile <Boolean>]
   [-AnswerFile <Script>]
   [-OperatingSystem <OperatingSystem>]
   [-VMMServer <ServerConnection>]
   [-Name] <String>
   [-Description <String>]
   [-FullName <String>]
   [-OrganizationName <String>]
   [-ComputerName <String>]
   [-ProductKey <String>]
   [-LocalAdministratorCredential <VMMCredential>]
   [-TimeZone <Int32>]
   [-RemoveServerFeatures]
   -Domain <String>
   [-DeploymentTypeNano <Boolean>]
   [-DomainJoinCredential <VMMCredential>]
   [-GuestOSProfile <GuestOSProfile>]
   [-Owner <String>]
   [-UserRole <UserRole>]
   [-AutoLogonCredential <RunAsAccount>]
   [-AutoLogonCount <UInt32>]
   [-DisableAutoLogon]
   [-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
   [-DomainJoinOrganizationalUnit <String>]
   [-RemoveDomainJoinOrganizationalUnit]
   [-LinuxDomainName <String>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]
New-SCGuestOSProfile
   [-Shielded <Boolean>]
   [-GuiRunOnceCommands <String[]>]
   [-MergeAnswerFile <Boolean>]
   [-AnswerFile <Script>]
   [-OperatingSystem <OperatingSystem>]
   [-VMMServer <ServerConnection>]
   [-Name] <String>
   [-Description <String>]
   [-FullName <String>]
   [-OrganizationName <String>]
   [-ComputerName <String>]
   [-ProductKey <String>]
   [-LocalAdministratorCredential <VMMCredential>]
   [-TimeZone <Int32>]
   [-RemoveServerFeatures]
   [-Workgroup <String>]
   [-GuestOSProfile <GuestOSProfile>]
   [-Owner <String>]
   [-UserRole <UserRole>]
   [-AutoLogonCredential <RunAsAccount>]
   [-AutoLogonCount <UInt32>]
   [-DisableAutoLogon]
   [-UnattendSettings <System.Collections.Generic.Dictionary`2[System.String,System.String]>]
   [-DomainJoinOrganizationalUnit <String>]
   [-RemoveDomainJoinOrganizationalUnit]
   [-LinuxDomainName <String>]
   [-RunAsynchronously]
   [-PROTipID <Guid>]
   [-JobVariable <String>]
   [<CommonParameters>]

Descrizione

Il cmdlet New-SCGuestOSProfile crea un profilo del sistema operativo guest da usare in Virtual Machine Manager (VMM). Un sistema operativo guest è il sistema operativo in una macchina virtuale, a differenza di un sistema operativo host che si trova nel computer host fisico in cui vengono distribuite una o più macchine virtuali.

In un profilo del sistema operativo guest sono archiviate le informazioni sulla configurazione del sistema operativo. Un profilo è costituito da un insieme di proprietà contenenti le impostazioni più comuni specificate in un file di risposte automatico, ad esempio Sysprep.inf o Unattend.xml.

È possibile creare un profilo del sistema operativo guest autonomo oppure personalizzare un modello o una macchina virtuale includendo le impostazioni del profilo del sistema operativo guest. Il cmdlet New-SCGuestOSProfile archivia il nuovo oggetto profilo del sistema operativo guest nella libreria VMM.

È possibile creare un profilo del sistema operativo guest in base a impostazioni predefinite o a un profilo del sistema operativo guest esistente oppure personalizzare le impostazioni durante la creazione del profilo. Se non si specificano parametri tranne il parametro Name, il cmdlet New-SCGuestOSProfile crea un oggetto profilo del sistema operativo guest predefinito.

Esempio

Esempio 1: Creare un profilo del sistema operativo guest predefinito

PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "64-bit edition of Windows Server 2008 R2 Enterprise"}
PS C:\> New-SCGuestOSProfile -Name "NewOSProfile01" -OperatingSystem $OS

Il primo comando ottiene l'oggetto del sistema operativo denominato "edizione a 64 bit di Windows Server 2008 R2 Enterprise" da VMMServer01 e archivia l'oggetto nella variabile $OS.

Il secondo comando crea un profilo del sistema operativo guest predefinito denominato NewProfile01 e specifica il nome del sistema operativo.

Esempio 2: Creare un profilo del sistema operativo guest da usare per aggiungere una macchina virtuale a un dominio

PS C:\> $DomainCredential = Get-SCRunAsAccount -Name "RunAsAccount01"
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "64-bit edition of Windows Server 2008 R2 Enterprise"} 
PS C:\> New-SCGuestOSProfile -Name "NewOSProfile02" -JoinDomain "Contoso.com" -DomainJoinCredential $DomainCredential -OperatingSystem $OS

Il primo comando ottiene l'oggetto account RunAsAccount01 e archivia l'oggetto nella variabile $DomainCredential.

Il secondo comando ottiene l'oggetto del sistema operativo denominato edizione a 64 bit di Windows Server 2008 R2 Enterprise da VMMServer01 e archivia l'oggetto nella variabile $OS.

L'ultimo comando crea un profilo del sistema operativo guest denominato NewOSProfile02 e specifica il nome del sistema operativo. Quando si usa NewOSProfile02 per creare una macchina virtuale, il profilo usa l'account RunAs specificato per aggiungere la macchina virtuale al dominio di Contoso.com.

Nota: se si specifica un oggetto PSCredential anziché un account RunAs per il parametro DomainJoinCredential , è consigliabile usare solo un account con diritti limitati per l'aggiunta automatica di una macchina virtuale a un dominio perché il nome dell'account di dominio e la password vengono visualizzati brevemente in testo normale nel server host.

Esempio 3: Clonare un profilo del sistema operativo guest esistente

PS C:\> $OSProfile = Get-SCGuestOSProfile -Name "NewOSProfile02"
PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.contoso.com" | where {$_.Name -eq "64-bit edition of Windows Server 2008 R2 Datacenter"} 
PS C:\> New-SCGuestOSProfile -Name "NewOSProfile03" -GuestOSProfile $OSProfile -ComputerName "Contoso03" -OperatingSystem $OS

Il primo comando ottiene l'oggetto profilo del sistema operativo guest denominato NewOSProfile02 e archivia l'oggetto nella variabile $OSProfile.

Il secondo comando ottiene l'oggetto del sistema operativo denominato edizione a 64 bit di Windows Server 2008 R2 Datacenter e archivia l'oggetto nella variabile $OS.

L'ultimo comando crea il profilo del sistema operativo guest denominato NewOSProfile03, basato su NewOSProfile02, ma modifica il nome del computer e specifica un nome diverso per il sistema operativo. Tutte le altre impostazioni in NewOSProfile03 sono identiche a quelle in NewOSProfile02.

Esempio 4: Creare un profilo del sistema operativo guest Linux e impostare il nome di dominio DNS Linux

PS C:\> $OS = Get-SCOperatingSystem -VMMServer "VMMServer01.Contoso.com" | where {$_.Name -eq "CentOS Linux 6 (64 bit)"} 
PS C:\> New-SCGuestOSProfile -Name "My CentOS Profile" -LinuxDomainName "contoso.com" -OperatingSystem $os

Il primo comando ottiene l'oggetto del sistema operativo denominato CentOS Linux 6 (64 bit) da VMMServer01 e archivia l'oggetto nella variabile $OS.

Il secondo comando crea un profilo del sistema operativo guest denominato My CentOS Profile e specifica il nome del sistema operativo e il nome di dominio DNS Linux. Quando si usa il profilo My CentOS per creare una macchina virtuale, il profilo usa il nome di dominio DNS Linux specificato.

Parametri

-AnswerFile

Specifica un oggetto script archiviato nella libreria VMM da utilizzare come file di risposte. Il nome di tale file di risposte dipende dal sistema operativo che si desidera installare in una macchina virtuale:

  • Sysprep.inf. Windows XP, Windows Server 2000 o Windows Server 2003
  • Unattend.xml. Windows Vista, Windows 7 o Windows Server 2008
Type:Script
Aliases:SysPrepFile
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-AutoLogonCount

Specifica il numero di volte in cui Windows deve registrare automaticamente l'amministratore specificato nel file di risposta nella sessione della console.

Type:UInt32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AutoLogonCredential

Specifica l'account RunAs contenuto nel file di risposta usato da Windows per accedere alla sessione della console quando l'accesso automatico dell'amministratore è abilitato.

Type:RunAsAccount
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ComputerName

Specifica il nome di un computer identificabile in modo univoco da VMM nella rete. I valori validi per questo parametro sono:

  • Nome di dominio completo
  • Indirizzo IPv4 o IPv6
  • Nome NetBIOS
Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DeploymentTypeNano

{{Fill DeploymentTypeNano Description}}

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Specifica una descrizione per il profilo del sistema operativo guest.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisableAutoLogon

Indica che questo cmdlet disabilita l'accesso automatico dell'amministratore.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Domain

Specifica un nome di dominio completo (FQDN) per un dominio Active Directory.

Formato di esempio: -Domain "Domain01.Corp.Contoso.com"

Type:String
Aliases:JoinDomain
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-DomainJoinCredential

Specifica il nome utente e la password di un account che dispone dell'autorizzazione per aggiungere un computer al dominio. È consigliabile usare un account di diritti limitato che aggiunge computer al dominio. Ciò include sia computer virtuali che fisici.

È possibile usare il parametro corrente per specificare le credenziali in un vmHostProfile per aggiungere un computer host fisico al dominio oppure specificare le credenziali, in un modello nuovo o esistente, in un profilo del sistema operativo guest nuovo o esistente o in una nuova macchina virtuale, per l'aggiunta di una macchina virtuale al dominio.

Type:VMMCredential
Aliases:JoinDomainCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DomainJoinOrganizationalUnit

Specifica l'unità organizzativa a cui viene aggiunto il computer durante un mini-setup automatico.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-FullName

Specifica il nome di persona utilizzato per la registrazione della macchina virtuale,

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-GuestOSProfile

Specifica un oggetto profilo del sistema operativo guest.

Type:GuestOSProfile
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-GuiRunOnceCommands

Specifica una matrice di comandi da aggiungere alla sezione [GuiRunOnce] di un file di risposta automatica. Usare virgolette singole intorno a ogni stringa racchiusa tra virgolette doppie.

Formato di esempio: -GuiRunOnceCommands '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"', '"C:\APF\APFPostSysPrepCopy.cmd PARAMS1"'

Per informazioni su come Windows PowerShell usa virgolette, digitare Get-Help about_Quoting_Rules.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

Specifica che lo stato del processo viene monitorato e archiviato nella variabile indicata in questo parametro.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LinuxAdministratorSSHKey

Specifica il file di chiave pubblica per una chiave SSH Linux.

Type:SSHKey
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LinuxAdministratorSSHKeyString

Specifica una chiave SSH amministratore Linux come stringa.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LinuxDomainName

Specifica un nome di dominio completo (FQDN) da usare insieme alla specializzazione del sistema operativo Linux.

Formato di esempio: -LinuxDomainName "Domain01.Corp.Contoso.com"

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LocalAdministratorCredential

Specifica il nome utente e la password per l'account amministratore locale (o l'account radice Linux nel caso di un profilo del sistema operativo guest compatibile con Linux).

Specificare le credenziali in un modello nuovo o esistente, in un profilo del sistema operativo guest nuovo o esistente o in una nuova macchina virtuale esegue l'override di qualsiasi password amministratore esistente.

Type:VMMCredential
Aliases:AdminPasswordCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MergeAnswerFile

Indica se questo cmdlet unisce il file di risposta insieme alle impostazioni del sistema operativo guest. Il valore predefinito è $True. La console VMM usa questo parametro. Non specificare questo parametro.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Specifica il nome di un oggetto di VMM.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-OperatingSystem

Specifica il tipo di sistema operativo per una macchina virtuale. Per ottenere i nomi di tutti i sistemi operativi disponibili in VMM, digitare Get-SCOperatingSystem.

Type:OperatingSystem
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OrganizationName

Specifica il nome dell'organizzazione per la persona nel cui nome viene registrata una macchina virtuale.

Type:String
Aliases:OrgName
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Owner

Specifica il proprietario di un oggetto VMM sotto forma di account utente di dominio valido.

  • Formato di esempio: -Owner "Contoso\PattiFuller"
  • Formato di esempio: -Owner "PattiFuller@Contoso"
Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ProductKey

Specifica un codice Product Key. Il codice "Product Key" è un numero composto da 25 cifre che identifica la licenza del prodotto. Un codice Product Key può essere usato per registrare VMM o un sistema operativo da installare in una macchina virtuale o in un host.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

Specifica l'ID del suggerimento prestazioni e ottimizzazione risorse (suggerimento PRO) che ha attivato questa azione. Questo parametro consente di controllare i suggerimenti PRO.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RemoveDomainJoinOrganizationalUnit

Indica che questo cmdlet rimuove l'unità organizzativa aggiunta al computer durante la configurazione.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RemoveServerFeatures

Indica che questo cmdlet rimuove tutti i ruoli e le funzionalità del server da un modello.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

Indica che il processo viene eseguito in modo asincrono in modo che il controllo restituisca immediatamente alla shell dei comandi.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Shielded

Indica se l'oggetto è schermato.

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TimeZone

Specifica un numero (indice) che identifica un'area geografica che condivide lo stesso tempo standard. Per un elenco di indici del fuso orario, vedere Valori dell'indice del fuso orario Microsoft all'indirizzo http://go.microsoft.com/fwlink/?LinkId=120935. Se non viene specificato alcun fuso orario, il fuso orario predefinito usato per una macchina virtuale è la stessa impostazione del fuso orario che si trova nell'host della macchina virtuale.

Formato di esempio per specificare il fuso orario standard GMT: -TimeZone 085

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UnattendSettings

Specifica una coppia chiave/valore costituita da String, String.

Type:System.Collections.Generic.Dictionary`2[System.String,System.String]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserRole

Specifica un oggetto ruolo utente.

Type:UserRole
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VMMServer

Specifica un oggetto server Virtual Machine Manager.

Type:ServerConnection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Workgroup

Specifica in un modello nuovo o esistente, in un profilo del sistema operativo guest nuovo o esistente o in una nuova macchina virtuale il nome del gruppo di lavoro a cui si vuole aggiungere una macchina virtuale. È possibile utilizzare questo parametro per sostituire il valore esistente in un modello o un profilo del sistema operativo guest.

Type:String
Aliases:JoinWorkgroup
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Output

GuestOSProfile

Questo cmdlet restituisce un oggetto GuestOSProfile .