Kickstart installation


The kickstart installation method provides a way to do automated installations of RedHat Linux and derivatives, while allowing the Anaconda installer to make decision about hardware support and packages dependencies. For documentation see

Using kickstart

Kickstart is not “used” as such, it is more of a method for installation preparation. It uses a script (ks.cfg) to describes the steps necessary for installing Linux. The script and installation files are then provided through standard services like a CD/DVD, dhcp+tftp or a floppy disk.

RedHat provides a tool system-config-kickstart for setting up a kickstart installation, which handles the creation of the ks.cfg file.

PXE configuration

Network booting by PXE (Preboot Execution Environment) uses the /tftpboot directory for downloading files by TFTP. In order to boot a machine into a Linux environment, the PXELINUX software is used.

The PXE/TFTP directory /tftpboot is organized with the following subdirectories:

  • pxelinux.cfg/: Contains PXE default.XXX boot files, as well as soft links corresponding to IP-addresses to be installed by PXE.

  • CentOS-4.X/ (X=3,4): Contains the two files vmlinuz (kernel) and initrd.img (RAM-disk).

The default.XXX files refer to the actual kickstart files in /u/rpm/kickstart/:


One of the options defined by these files are the choice of nfs install, via the nfs exported directory (u/rpm) on intra5:

#Use NFS installation Media
nfs --server=  --dir=/u/rpm/iso/CentOS-4.4-i386

For a new release a new directory /u/rpm/iso/CentOS-4.X should be added and the ISO files placed in this directory, and the kickstart files should be modified accordingly. The ISO files should be downloaded from a Centos mirror site such as

PXE boot parameters

The PXE booting is controlled by a number of parameters in the PXE configuration file, for example:

label CentOS5 clean-i386
      menu label Clean CentOS-5-i386, kickstart
      kernel CentOS-5-i386/vmlinuz
      append load_ramdisk=1 initrd=CentOS-5-i386/initrd.img network ks=nfs:

Here the append parameters are documented in The Kickstart file is controlled by the ks=… parameter which can use several types of resources such as nfs, http or ftp. Please note that for RHEL6/CentOS6 that NFS defaults to NFS version 4, however, the ks= parameter also permits NFS mount options such as:


vmlinuz and initrd.img

The boot kernel and initial file system used by PXE are the vmlinuz mini-kernel and the initrd initial RAM-disk, respectively. These should be downloaded from a Centos mirror site in the centos/X/os/x86_64/isolinux/ directory (replace X by actual version).

On the intra5 DHCP/PXE server they are placed in /tftpboot/CentOS-X.Y directory for Centos version X.Y.

The PXE boot files in the /tftpboot/pxelinux.cfg directory must contain default.XXX files such as default.install-centos-4.4-clean which contain a reference to the new versions of vmlinuz and initrd in /tftpboot/CentOS-X.Y.


The following entry in /etc/dhcpd.conf enables PXE boot by means of the PXELINUX software:

# TFTP download from intra5:
# Start up PXELINUX:
filename "pxelinux.bin";

These lines are added to /etc/dhcpd.conf on the DHCP servers.

Further reading

Kickstart is described in the manuals on