Skip to content

Latest commit

 

History

History
86 lines (66 loc) · 4.22 KB

File metadata and controls

86 lines (66 loc) · 4.22 KB

Answer Files

An automated operating system (OS) deployment solution utilizing answer files. This solution streamlines the installation of Windows and Linux systems through unattended files, ensuring consistent, repeatable, and hands-free deployment across physical and virtual environments.

Features

  • Unattended installation for UEFI-based systems running Ubuntu Server 24.04, Windows 10, Windows 11, Windows Server 2019, Windows Server 2022, and Windows Server 2025.
  • OpenSSH Server pre-installed to streamline post-deployment configuration (e.g., khangvum/homelab-ansible-config).
  • VMware Tools installed on supported virtual machines (VMs).
  • Remote Desktop Services (formerly Terminal Services) enabled.

Outline

Filesystem Hierarchy

Ubuntu

├── boot
│   └── grub
│       └── grub.cfg
└── nocloud
    ├── meta-data
    └── user-data

Windows

├── sources
│   └── $oem$
│       └── $$
│           └── Setup
│               └── Scripts
│                   ├── OpenSSH-Server-x64.bat
│                   ├── OpenSSH-Server-x64.msi
│                   └── VMware-Tools-x64.exe
└── autounattend.xml

Troubleshooting

  1. Windows 11 Unattended Installation Fails on Version 24H2 and Later
  • Windows 11 24H2 and later use a new setup process:

    Version Process
    23H2 and earlier X:\setup.exe is invoked.
    24H2 and later X:\Sources\setup.exe is executed, which runs SetupHost.exe, which in turn invokes SetupPrep.exe.
  • The solution is to explicitly invoke the legacy setup process:

    <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">
            <RunSynchronous>
                <RunSynchronousCommand wcm:action="add">
                    <Description>Switch to Legacy Setup</Description>
                    <Order>1</Order>
                    <Path>reg add "HKEY_LOCAL_MACHINE\SYSTEM\Setup" /v CmdLine /t REG_SZ /d "X:\sources\setup.exe" /f</Path>
                </RunSynchronousCommand>
            </RunSynchronous>
        </component>
    </settings>
  1. OpenSSH Server Installation Fails on Windows Server 2025
  • Starting with Windows Server 2025, OpenSSH Server is installed by default and is no longer labelled as a preview feature. As a result, the firewall rule created during installation differs compared to other Windows OS:

    OS Firewall Rule
    Other Windows OS OpenSSH SSH Server Preview (sshd)
    Windows Server 2025 OpenSSH SSH Server (sshd)
  • Update the OpenSSH-Server-x64.bat batch script for Windows Server 2025 to reflect the new firewall rule name.