Product SiteDocumentation Site

11.4. Automating the Installation with Kickstart

You can allow an installation to run unattended by using Kickstart. A Kickstart file specifies settings for an installation. Once the installation system boots, it can read a Kickstart file and carry out the installation process without any further input from a user.

Every Installation Produces a Kickstart File

The Fedora installation process automatically writes a Kickstart file that contains the settings for the installed system. This file is always saved as /root/anaconda-ks.cfg. You may use this file to repeat the installation with identical settings, or modify copies to specify settings for other systems.
Fedora includes a graphical application to create and modify Kickstart files by selecting the options that you require. Use the package system-config-kickstart to install this utility. To load the Fedora Kickstart editor, choose ApplicationsSystem ToolsKickstart.
Kickstart files list installation settings in plain text, with one option per line. This format lets you modify your Kickstart files with any text editor, and write scripts or applications that generate custom Kickstart files for your systems.
To automate the installation process with a Kickstart file, use the ks option to specify the name and location of the file:
 linux ks=location/kickstart-file.cfg
You may use Kickstart files that are held on either removable storage, a hard drive, or a network server. Refer to Table 11.2, “Kickstart sources” for the supported Kickstart sources.
Table 11.2. Kickstart sources
Kickstart source Option format
DVD drive ks=cdrom:/directory/ks.cfg
Hard Drive ks=hd:device/directory/ks.cfg
Other Device ks=file:/device/directory/ks.cfg
HTTP Server ks=http://server.mydomain.com/directory/ks.cfg
FTP Server ks=ftp://server.mydomain.com/directory/ks.cfg
NFS Server ks=nfs:server.mydomain.com:/directory/ks.cfg

To obtain a Kickstart file from a script or application on a Web server, specify the URL of the application with the ks= option. If you add the option kssendmac, the request also sends HTTP headers to the Web application. Your application can use these headers to identify the computer. This line sends a request with headers to the application http://server.mydomain.com/kickstart.cgi:
linux ks=http://server.mydomain.com/kickstart.cgi kssendmac