Share via


Appendix A: Sample Server Core installation - Unattend.xml

Appendix A: Sample Server Core installation - Unattend.xml

Copy this sample code into a text editor and save it as Unattend.xml.

Note

See the unattend file documentation for more information about unattend file settings. Windows System Image Manager, which is provided as part of the Windows Automated Installation Kit, provides an excellent environment for authoring unattend files.

<unattend xmlns="urn:schemas-microsoft-com:unattend" xmlns:ms="urn:schemas-microsoft-com:asm.v3" xmlns:wcm="https://schemas.microsoft.com/WMIConfig/2002/State">

<!-- Do not have empty elements. Delete such elements instead. Values should be assumed to be case sensitive. Boolean types have valid values as true,false,0,1 and are case sensitive. Other examples of case sensitive values are Drive Letters (only upper case C-Z supported), Format, Type. -->

<settings pass="windowsPE">

<component name="Microsoft-Windows-Setup" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86">

<UserData>

<AcceptEula>true</AcceptEula>

<!-- Optional FullName, Organization. WillShowUI for ComputerName, ProductKey default to OnError -->

<FullName>MyFullName</FullName>

<Organization>MyOrganizationName</Organization>

<ProductKey>

<WillShowUI>OnError</WillShowUI>

<Key>Sensitive*Data*Deleted</Key>

</ProductKey>

</UserData>

<ImageInstall>

<OSImage>

<WillShowUI>Never</WillShowUI>

<InstallTo>

<DiskID>0</DiskID>

<PartitionID>1</PartitionID>

</InstallTo>

<InstallFrom>

<MetaData>

<Key>/IMAGE/Name</Key>

<!—Specify that this is a Server Core installation. To install server, the value is Windows Longhorn Server%SKU%core. This example is for the Standard edition -->

<Value>Windows Longhorn SERVERSTANDARDCORE</Value>

</MetaData>

</InstallFrom>

</OSImage>

</ImageInstall>

</component>

</settings>

<settings pass="specialize">

<component name="Microsoft-Windows-Shell-Setup" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86">

<!-- ComputerName can contain no more than 15 characters -->

<ComputerName>MyCompName</ComputerName>

</component>

<component name="Microsoft-Windows-TerminalServices-RDP-WinStationExtensions" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86">

<!-- Enable support for pre-Windows Vista or Windows Server 2008 Terminal Services clients -->

<UserAuthentication>0</UserAuthentication>

</component>

<component name="Microsoft-Windows-TerminalServices-LocalSessionManager" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86">

<!-- Enable Terminal Services Remote Admin Mode -->

<fDenyTSConnections>false</fDenyTSConnections>

</component>

<component name="Microsoft-Windows-Web-Services-for-Management-Core" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86">

<!-- Enable Windows Remote Shell Listener -->

<ConfigureWindowsRemoteManagement>true</ConfigureWindowsRemoteManagement>

</component>

<component name="Microsoft-Windows-UnattendedJoin" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86">

<Identification>

<Credentials>

<Domain>UserDomain</Domain>

<Username>UserName</Username>

<Password>UserPassword</Password>

</Credentials>

<JoinDomain>DomainToBeJoined</JoinDomain>

<!-- You can either have JoinDomain or JoinWorkgroup but not both.

<JoinWorkgroup>work</JoinWorkgroup>

-->

</Identification>

</component>

</settings>

<settings pass="oobeSystem">

<component name="Microsoft-Windows-Shell-Setup" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" processorArchitecture="x86">

<Display>

<HorizontalResolution>1024</HorizontalResolution>

<VerticalResolution>768</VerticalResolution>

<ColorDepth>16</ColorDepth>

</Display>

<UserAccounts>

<DomainAccounts>

<DomainAccountList>

<Domain>DOMAIN</Domain>

<DomainAccount>

<Name>TestAccount1</Name>

<Group>Administrators</Group>

</DomainAccount>

</DomainAccountList>

</DomainAccounts>

</UserAccounts>

</component>

</settings>

</unattend>

Note

For <computername>, if you use * the name will be randomly generated.