vSphere PowerCLI Reference



Creates a new OS customization specification.


New-OSCustomizationSpec [-OSType <String>] [-Server <VIServer[]>] [-Name <String>] [-Type <OSCustomizationSpecType>] [-DnsServer <String[]>] [-DnsSuffix <String[]>] [-Domain <String>] [-NamingScheme <String>] [-NamingPrefix <String>] [-Description <String>] [-WhatIf] [-Confirm] [<CommonParameters>]
New-OSCustomizationSpec -OSCustomizationSpec <OSCustomizationSpec> [-Server <VIServer[]>] [-Name <String>] [-Type <OSCustomizationSpecType>] [-WhatIf] [-Confirm] [<CommonParameters>]
New-OSCustomizationSpec -FullName <String> -OrgName <String> [-OSType <String>] [-ChangeSid] [-DeleteAccounts] [-Server <VIServer[]>] [-Name <String>] [-Type <OSCustomizationSpecType>] [-DnsServer <String[]>] [-DnsSuffix <String[]>] [-GuiRunOnce <String[]>] [-AdminPassword <String>] [-TimeZone <String>] [-AutoLogonCount <Int32>] [-Domain <String>] [-Workgroup <String>] [-DomainCredentials <PSCredential>] [-DomainUsername <String>] [-DomainPassword <String>] [-ProductKey <String>] [-NamingScheme <String>] [-NamingPrefix <String>] [-Description <String>] [-LicenseMode <LicenseMode>] [-LicenseMaxConnections <Int32>] [-WhatIf] [-Confirm] [<CommonParameters>]

Related Commands

Online version

Detailed Description

Creates a new OS customization specification or clones an existing one. If a name is provided, creates and adds the specified customization specification to the server. Otherwise, creates and returns the requested specification object. If the -Name parameter is not specified, the OSCustomizationSpec object is not persisted on the server. Either the Domain or the Workgroup parameters should be provided if a Windows specification is created. If a Linux specification is created, the Domain parameter is mandatory. New-OSCustomizationSpec automatically creates a default NIC mapping.


NameTypeDescriptionRequired?Pipeline InputDefault Value
AdminPasswordStringSpecify a new OS administrator's password.falsefalse
AutoLogonCountInt32Specify the number of times the virtual machine automatically logs in as administrator without prompting for user credentials. The valid values are in the range between 0 and Int32.MaxValue. Specifying 0 disables auto log-on.falsefalse0
ChangeSidSwitchParameterIndicate that the customization should modify the system security identifier (SID). This parameter applies only to Windows operating systems.falsefalse
ConfirmSwitchParameterIf the value is $true, indicates that the cmdlet asks for confirmation before running. If the value is $false, the cmdlet runs without asking for user confirmation.falsefalse$true
DeleteAccountsSwitchParameterIndicate that you want to delete all user accounts.falsefalse
DescriptionStringProvide a description for the new specification.falsefalseempty string
DnsServerString[]Specify the DNS server settings.falsefalse
DnsSuffixString[]Specify the DNS suffix settings.falsefalse
DomainStringSpecify a domain name.falsefalseempty string
DomainCredentialsPSCredentialSpecify the credentials you want to use for domain authentication.falsefalse
DomainPasswordStringSpecify the password you want to use for domain authentication.falsefalse
DomainUsernameStringSpecify the user name you want to use for domain authentication.falsefalse
FullNameStringSpecify the administrator's full name.truefalse
GuiRunOnceString[]Specify a list of commands. These commands run when a user logs in for the first time after the customization completes.falsefalse
LicenseMaxConnectionsInt32Specify the maximum connections for server license mode. Use this parameter only if the -LicenseMode parameter is set to Perserver.falsefalse$null
LicenseModeLicenseModeSpecify the license mode of the Windows 2000/2003 guest operating system. The valid values are Perseat, Perserver, and Notspecified. If Perserver is set, use the -LicenseMaxConnection parameter to define the maximum number of connections.falsefalseNotspecified
NameStringSpecify a name for the new specification.falsefalse
NamingPrefixStringDepends on the customization naming scheme - Custom, NamingPrefix, or Prefix. If the "Custom" naming scheme is used, NamingPrefix is an optional argument that is passed to the utility for this IP address. The meaning of this field is user-defined in the script. If the "Fixed" naming scheme is used, NamingPrefix should indicate the name of the virtual machine. If the "Prefix" naming scheme is selected, NamingPrefix indicates the prefix to which a unique number is appended.falsefalseempty string
NamingSchemeStringSpecify the naming scheme for the virtual machine. The following values are valid:

Custom - Specifies that vCenter Server will launch an external application to generate the (hostname/IP). The command line for this application must be specified in the server configuration file (vpxd.cfg) in the vpxd/name-ip-generator key.

Fixed - Specifies that the name is fixed.

Prefix - Specifies that a unique name should be generated by concatenating the base string with a number. Virtual machine names are unique across the set of hosts and virtual machines known to the vCenter Server instance. vCenter Server tracks the network names of virtual machines as well as hosts. VMware Tools runs in a guest operating system and reports information to vCenter Server, including the network name of the guest.

Vm - Specifies that vCenter Server should generate a virtual machine name from a base prefix comprising the virtual machine entity name. A number is appended, if necessary, to make it unique. Virtual machine names are unique across the set of hosts and virtual machines known to the vCenter Server instance. VMware Tools reports the names of existing virtual machines.
OrgNameStringSpecify the name of the organization to which the administrator belongs.truefalse
OSCustomizationSpecOSCustomizationSpecSpecify an OS customization specification that you want to clone.truetrue (ByValue)
OSTypeStringSpecify the type of the operating system. The valid values are Linux and Windows.falsefalseWindows
ProductKeyStringSpecify the MS product key. If the guest OS version is earlier than Vista, this parameter is required in order to make the customization unattended. For Vista or later, the OS customization is unattended no matter if the ProductKey parameter is set.falsefalseempty string
ServerVIServer[]Specify the vSphere servers on which you want to run the cmdlet. If no value is given to this parameter, the command runs on the default servers. For more information about default servers, see the description of Connect-VIServer.falsetrue (ByValue)
TimeZoneStringSpecify the name or ID of the time zone for the OS. The following time zones are available:

000 Int'l Dateline
001 Samoa
002 Hawaii
003 Alaskan
004 Pacific
010 Mountain (U.S. and Canada)
015 U.S. Mountain: Arizona
020 Central (U.S. and Canada)
025 Canada Central
030 Mexico
033 Central America
035 Eastern (U.S. and Canada)
040 U.S. Eastern: Indiana (East)
045 S.A. Pacific
050 Atlantic (Canada)
055 S.A. Western
056 Pacific S.A.
060 Newfoundland
065 E. South America
070 S.A. Eastern
073 Greenland
075 Mid-Atlantic
080 Azores
083 Cape Verde Islands
085 GMT (Greenwich Mean Time)
090 GMT Greenwich
095 Central Europe
100 Central European
105 Romance
110 W. Europe
113 W. Central Africa
115 E. Europe
120 Egypt
125 EET (Helsinki, Riga, Tallinn)
130 EET (Athens, Istanbul, Minsk)
135 Israel: Jerusalem
140 S. Africa: Harare, Pretoria
145 Russian
150 Arab
155 E. Africa
160 Iran
165 Arabian
170 Caucasus Pacific (U.S. and Canada)
175 Afghanistan
180 Russia Yekaterinburg
185 W. Asia
190 India
193 Nepal
195 Central Asia
200 Sri Lanka
201 N. Central Asia
203 Myanmar: Rangoon
205 S.E. Asia
207 N. Asia
210 China
215 Singapore
220 Taipei
225 W. Australia
227 N. Asia East
230 Korea: Seoul
235 Tokyo
240 Sakha Yakutsk
245 A.U.S. Central: Darwin
250 Central Australia
255 A.U.S. Eastern
260 E. Australia
265 Tasmania
270 Vladivostok
275 W. Pacific
280 Central Pacific
285 Fiji
290 New Zealand
300 Tonga
TypeOSCustomizationSpecTypeSpecify the type of the OS customization specification. The valid values are Persistent and NonPersistent.falsefalse
WhatIfSwitchParameterIndicate that the cmdlet is run only to display the changes that would be made and actually no objects are modified.falsefalse
WorkgroupStringSpecify a workgroup.falsefalseempty string

Return Type



When the ProductKey parameter is not specified, the OS customization is una ttended only if the Windows guest operating system version is Vista or late r. This cmdlet is supported only in 32-bit PowerCLI mode.


-------------- Example 1 --------------

New-OSCustomizationSpec -Name Spec -OSType Windows -FullName Administrator -OrgName Organization -NamingScheme Fixed -NamingPrefix Computer -ProductKey "xxxx-xxxx" -LicenseMode PerSeat -Workgroup Workgroup -ChangeSid

Generates a new SID for the machine and sets the name of the machine to "Computer".

-------------- Example 2 --------------

New-OSCustomizationSpec -Name Spec -OSType Windows -Description "This spec adds a computer in a domain." -FullName Administrator -OrgName Organization -NamingScheme Fixed -NamingPrefix "Computer" -ProductKey "xxxx-xxxx" -LicenseMode Perserver -LicenseMaxConnections 30 -AdminPassword pass -Domain Domain -DomainUsername Root -DomainPassword pass

Creates a customization specification that adds a computer in the domain named "Domain".

Copyright © 1998 - 2011 VMware, Inc. All rights reserved.