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 http://fedoraproject.org/wiki/Anaconda/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.
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
The default.XXX files refer to the actual kickstart files in
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=126.96.36.199 --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 http://mirrors.fysik.dtu.dk/linux/centos/.
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:188.8.131.52:/u/rpm/kickstart/ks-centos-5-clean-i386.cfg
Here the append parameters are documented in http://fedoraproject.org/wiki/Anaconda_Boot_Options. 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
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
The following entry in
/etc/dhcpd.conf enables PXE boot
by means of the PXELINUX software:
# TFTP download from intra5: next-server 184.108.40.206; # Start up PXELINUX: filename "pxelinux.bin";
These lines are added to
/etc/dhcpd.conf on the DHCP servers.
Kickstart is described in the manuals on http://www.redhat.com/docs/manuals/: