Andrew Mercer
on this page

Every major Linux distribution family has its own format for describing an unattended install — partitioning, package selection, users, post-install scripting — plus a shared set of mechanisms (PXE, an HTTP/ISO-embedded answer file) for actually delivering that file to a booting machine. This section covers the answer-file formats and the delivery/orchestration tooling around them.

By distro family

Distro family Installer Answer-file format
RHEL / CentOS / Fedora Anaconda Kickstart (.ks, declarative + shell %post)
Ubuntu Server (20.04+) Subiquity Autoinstall (cloud-init-based YAML)
Debian / older Ubuntu debian-installer Preseed (debconf answers)
openSUSE / SLES YaST AutoYaST (XML)
Fedora CoreOS / RHCOS Ignition Ignition/Butane (declarative JSON, authored as YAML)
Any cloud/VM image cloud-init cloud-init (YAML, first-boot rather than installer)

Delivery and orchestration, independent of format

  • PXE / netboot — network-boot a bare-metal or VM host and hand it a kernel, initrd, and answer-file location, with no physical media
  • FAI — Debian-ecosystem alternative to preseed, class-based and more scriptable
  • Cobbler and Foreman — provisioning servers that wrap kickstart/preseed/PXE/DHCP/TFTP into one managed frontend, with Foreman/Katello being the common RHEL-shop combination alongside Satellite
  • Packer — builds machine images (not a live-install orchestrator) but commonly consumes a Kickstart/Preseed/Autoinstall file as its "how do I answer the installer" input

Personal notes

  • Kickstart: field notes — delivery methods, GitLab-hosted kickstarts, custom ISOs, SSH-into-installer debugging

If you're deciding what to use for a new environment: Kickstart/Autoinstall/Preseed/AutoYaST are the right layer for actually partitioning a disk and installing packages onto bare metal or a fresh VM; cloud-init and Ignition are the right layer once you're handing a pre-built image to a hypervisor/cloud API and just need first-boot configuration (users, network, a few files) rather than a package-selection install. Cobbler/Foreman/FAI sit above the answer-file layer, managing many machines' worth of kickstart/preseed content, DHCP reservations, and TFTP/PXE configuration in one place instead of by hand.

in this section
* autoinstall — unattended ubuntu server installs/
* autoyast — unattended opensuse / sles installs/
* cloud-init — first-boot instance configuration/
* cobbler and foreman — provisioning servers/
* fai — fully automatic installation/
* ignition and butane — declarative first-boot for coreos/
* kickstart — unattended installs for rhel, centos, and fedora/
* notes: kickstart field reference/
* packer — building machine images from install automation/
* preseed — unattended debian (and older ubuntu) installs/
* pxe / netboot — network-booting installers/