Score:1

autounattend via WDS Windows server 2019 not running, no validation issues

in flag

I have spent a good number of hours on this and due to the massive amount of links to Windows 7,8,10 and older server versions essentially crowding the search results I am not able to find my way forward on this.

Issue summary:

WDS server installed.

The client (which is booting in UEFI Mode) picks up the lease from dhcp, pulls the initial boot stage files and the Server 2019 install starts, by starts I mean it asks me to pick the locale and keyboard input method despite having linked the autounattend.xml to the install image in WDS as well as in the architecture within WDS (server, properties, clients).

Here is the XML: https://pastebin.com/eg7yF1Qf (could not post here said it looked like spam)

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <settings pass="windowsPE">
        <component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <UserData>
                <ProductKey>
                    <Key>REMOVED FOR POST</Key>
                </ProductKey>
                <AcceptEula>true</AcceptEula>
            </UserData>
            <ImageInstall>
                <OSImage>
                    <InstallFrom>
                        <MetaData wcm:action="add">
                            <Value>Windows Server 2019 SERVERDATACENTER</Value>
                            <Key>/IMAGE/NAME</Key>
                        </MetaData>
                    </InstallFrom>
                    <InstallTo>
                        <DiskID>0</DiskID>
                        <PartitionID>3</PartitionID>
                    </InstallTo>
                </OSImage>
            </ImageInstall>
            <DiskConfiguration>
                <Disk wcm:action="add">
                    <CreatePartitions>
                        <CreatePartition wcm:action="add">
                            <Order>1</Order>
                            <Size>260</Size>
                            <Type>EFI</Type>
                        </CreatePartition>
                        <CreatePartition wcm:action="add">
                            <Order>2</Order>
                            <Size>16</Size>
                            <Type>MSR</Type>
                        </CreatePartition>
                        <CreatePartition wcm:action="add">
                            <Order>3</Order>
                            <Size>20000</Size>
                            <Type>Primary</Type>
                        </CreatePartition>
                    </CreatePartitions>
                    <ModifyPartitions>
                        <ModifyPartition wcm:action="add">
                            <Format>FAT32</Format>
                            <Label>System</Label>
                            <Order>1</Order>
                            <PartitionID>1</PartitionID>
                        </ModifyPartition>
                        <ModifyPartition wcm:action="add">
                            <Extend>true</Extend>
                            <Format>NTFS</Format>
                            <Label>OS</Label>
                            <Letter>C</Letter>
                            <Order>2</Order>
                            <PartitionID>3</PartitionID>
                        </ModifyPartition>
                    </ModifyPartitions>
                    <DiskID>0</DiskID>
                    <WillWipeDisk>true</WillWipeDisk>
                </Disk>
            </DiskConfiguration>
        </component>
        <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <SetupUILanguage>
                <WillShowUI>OnError</WillShowUI>
                <UILanguage>en-US</UILanguage>
            </SetupUILanguage>
            <InputLocale>en-GB</InputLocale>
            <SystemLocale>en-GB</SystemLocale>
            <UILanguage>en-US</UILanguage>
            <UserLocale>en-GB</UserLocale>
        </component>
    </settings>
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <UserAccounts>
                <AdministratorPassword>
                    <Value>REMOVED FOR POST</Value>
                    <PlainText>true</PlainText>
                </AdministratorPassword>
            </UserAccounts>
        </component>
        <component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <InputLocale>en-GB</InputLocale>
            <UILanguage>en-GB</UILanguage>
            <UserLocale>en-GB</UserLocale>
            <SystemLocale>en-GB</SystemLocale>
        </component>
    </settings>
    <settings pass="specialize">
        <component name="Microsoft-Windows-TerminalServices-LocalSessionManager" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <fDenyTSConnections>false</fDenyTSConnections>
        </component>
        <component name="Networking-MPSSVC-Svc" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <FirewallGroups>
                <FirewallGroup wcm:action="add" wcm:keyValue="RemoteDesktop">
                    <Active>true</Active>
                    <Group>Remote Desktop</Group>
                    <Profile>all</Profile>
                </FirewallGroup>
            </FirewallGroups>
        </component>
        <component name="Microsoft-Windows-TerminalServices-RDP-WinStationExtensions" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <SecurityLayer>1</SecurityLayer>
            <UserAuthentication>0</UserAuthentication>
        </component>
    </settings>
    <cpi:offlineImage cpi:source="wim:e:/install.wim#Windows Server 2019 SERVERSTANDARD" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>

Each time it runs I get to the point of picking the locale and keyboard input language like the autounattend.xml is being completely ignored.

I created a separate partition for the images and the autounattend.xml is in E:\RemoteInstall\WdsClientUnattend\autounattend.xml

I tried using the ISO and a floppy image to test the xml and I found that I get no errors at all unless I use the name autounattend.xml in which case it produces a 0x000005 access violation error code with no useable information.

The server essentially logs nothing about the install so is useless for troubleshooting.

I can't help feeling it is probably something simple, I followed a number of guides to get to this point not having used network deployments for windows since XP+WIS.

The XML was created in WSIM and shows no validation issues.

Additionally, when I manually pick the keyboard input and system locale I am then asked to log in to the WDS server, which then fails.

I have it set to allow all known and unknown and the WDS is in stand-alone mode on the same physical network.

Other info: The key used is a real one, the ISO used to generate the install image was: SW_DVD9_Win_Server_STD_CORE_2019_1809.5_64Bit_English_DC_STD_MLF_X22-34333.ISO, only the Standard install image is on the WDS (not DC or core)

Any help would be appreciated or even alternate methods of getting more verbose output from the installer so at least I know where to look.

dz flag
Can you grab a copy of the panther (setup) logs from the client when it boots? I wanna see why it isn't reading the unattended file. It may be tricky if you are booting a VM. If you are, give it an extra disk that you can use CMD or notepad's open file dialog to copy the data over to. (To open CMD in Windows OS setup, use shift + F10). It may be shift f8 or something similar, I may have forgotten the key combo.
Anthony Smith avatar
in flag
Best I can find: within the panther dir there is a file named: setuperr Contents: 2021-07+11 07:46:36, Error [0x0b003a] WDS <GetNameInfo failed; status 0x8007276d>[gle=0x0000276d] (repeated 8 times) in the diagwrn file I see the last line states: Callback_Locale_SetSetupKeyboardLaout "An error occurred trying to set the keyboard layout" Which is tie stamped about 10 seconds after the error above. I did notice some warnings about en-GB in the setup log so I have switched all to en-US to test, will report back.
Anthony Smith avatar
in flag
Sorry, I should add, I am doing this over an IPMI so the ability to grab logs is limited.
dz flag
While inside the WDS booted wim, can you see if it has connectivity to the WDS server? It may be that the dns isn't working. I would also check to see that the boot WIM is also a modern base image Incase it tries to read ESD files.
Anthony Smith avatar
in flag
Thanks for the tips @ElliotLabsLLC I reinstalled everything this morning using a more up to date ISO and recreated the installation sources and boot image (essentially everything from scratch) The results are the same. I jumped into a command prompt after it stops and I can see the server has the address as expected from the DHCP server, I can also see 2 established connections to the WDS IP address on port 135 and 5040. I can ping the WDS server by its computer name e.g. WIN-3O4056L7K7 from the client.
Anthony Smith avatar
in flag
I am wondering if this is a UEFI/MBR issue of some sort though. if I right-click the WDS server and go to properties, then look at the boot tab, on the bottom I see the options for the 'Default boot image' to select the boot.win per architecture. x64 and x64 (UEFI) are separate and when using browse it only finds an x64 boot.wim Is there a specific boot.wim for x64(UEFI) ? perhaps that is the problem here. The boot/x64uefi directory only contains a default.bcd
Anthony Smith avatar
in flag
Small step forward, I think because there was an EFI partition from an Ubuntu install left on the disk it was stopping the installer from proceeding. Got stuck at the usual place but as the IPMI was being friendly for once I was able to use the back slash, by confirming the keyboard layout, then being prompted to login I was able to using the WDS-SERVER-NAME\administrator The install continued semi-automated except for the license, once I deleted the disk it does the same again so I think I need to specify the administrator username as WDS-SERVER-NAME\administrator in the kickstart ??
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.