The following options can be placed in a kickstart file.
- auth (required)
Sets up the authentication options for the system. It's similar
to the authconfig command, which can be run
after the install. By default, passwords are normally encrypted
and are not shadowed.
- --enablemd5
Use md5 encryption for user passwords.
- --enablenis
Turns on NIS support. By default,
--enablenis uses whatever domain it
finds on the network. A domain should almost always be
set by hand (via --nisdomain).
- --nisdomain
NIS domain name to use for NIS services.
- --nisserver
Server to use for NIS services (broadcasts by default).
- --useshadow
Use shadow passwords.
- --enableldap
Turns on LDAP support in
/etc/nsswitch.conf, allowing your
system to retrieve information about users (UIDs, home
directories, shells, etc.) from an LDAP directory. To
use this option, you must have the
nss_ldap package installed. You
must also specify a server and a base DN.
- --enableldapauth
Use LDAP as an authentication method. This enables the
pam_ldap module for authentication
and changing passwords, using an LDAP directory. To use
this option, you must have the
nss_ldap package installed. You
must also specify a server and a base DN.
- --ldapserver=
The name of the LDAP server to use, if you specified
either --enableldap or
--enableldapauth. This option is set
in the /etc/ldap.conf file.
- --ldapbasedn=
The DN (distinguished name) in your LDAP directory tree
under which user information is stored. This option is
set in the /etc/ldap.conf file.
- --enablekrb5
Use Kerberos 5 for authenticating users. Kerberos
itself does not know about home directories, UIDs, or
shells. So if you enable Kerberos you will need to
make users' accounts known to this workstation by
enabling LDAP, NIS, or Hesiod or by using
the /usr/sbin/useradd command
to make their accounts known to this workstation. If
you use this option, you must have the
pam_krb5 package installed.
- --krb5realm
The Kerberos 5 realm to which your workstation belongs.
- --krb5kdc
The KDC (or KDCs) that serve requests for the realm. If
you have multiple KDCs in your realm, separate their
names with commas (,).
- --krb5adminserver
The KDC in your realm that is also running kadmind.
This server handles password changing and other
administrative requests. This server must be run on the
master KDC if you have more than one KDC.
- --enablehesiod
Enable Hesiod support for looking up user home
directories, UIDs, and shells. More information on
setting up and using Hesiod on your network is in
/usr/share/doc/glibc-2.x.x/README.hesiod,
which is included in the glibc
package. Hesiod is an extension of DNS that uses DNS
records to store information about users, groups, and
various other items.
- --hesiodlhs
The Hesiod LHS ("left-hand side") option, set in
/etc/hesiod.conf. This option is
used by the Hesiod library to determine the name to
search DNS for when looking up information, similar to
LDAP's use of a base DN.
- --hesiodrhs
The Hesiod RHS ("right-hand side") option, set in
/etc/hesiod.conf. This option is
used by the Hesiod library to determine the name to
search DNS for when looking up information, similar to
LDAP's use of a base DN.
 | Tip |
|---|
| | To look up user information for "jim", the Hesiod
library looks up
jim.passwd<LHS><RHS>,
which should resolve to a TXT record that looks like
what his passwd entry would look like
(jim:*:501:501:Jungle
Jim:/home/jim:/bin/bash). For
groups, the situation is identical, except
jim.group<LHS><RHS>
would be used.
Looking up users and groups by number is handled by
making "501.uid" a CNAME for "jim.passwd", and
"501.gid" a CNAME for "jim.group". Note that the LHS
and RHS do not have periods [.] put in
front of them when the library determines the name for
which to search, so the LHS and RHS usually begin with
periods.
|
- clearpart (optional)
Removes partitions from the system, prior to creation of new
partitions. By default, no partitions are removed.
- --linux
Erases Linux (type 0x82, 0x83, and 0xfd [RAID]) partitions
- --all
Erases all partitions from the system.
- device (optional)
On most PCI systems, the installation program will autoprobe for
Ethernet and SCSI cards properly. On older systems and some PCI
systems, however, kickstart needs a hint to find the proper
devices. The device command, which tells
Anaconda to install extra modules, is
in this format:
device <type> <moduleName> --opts <options> |
<type> should be one of
"scsi" or "eth", and
<moduleName> is the name of the
kernel module which should be installed.
- --opts
Options to pass to the kernel module. Note that multiple
options may be passed if they are put in quotes. For
example:
--opts "aic152x=0x340 io=11" |
- driverdisk (optional)
Driver disks can be used during kickstart installations. You
will need to copy the driver disk's contents to the root
directory of a partition on the system's hard drive. Then you
will need to use the driverdisk command to
tell the installation program where to look for the driver disk.
driverdisk <partition> [--type <fstype>] |
<partition> is the partition
containing the driver disk.
- --type
Filesystem type (for example, vfat or ext2).
- firewall (optional)
Firewall options can be configured in kickstart. This
configuration corresponds to the Firewall
Configuration screen in the installation program.
firewall [--high | --medium | --disabled] [--trust <device>] [--dhcp] [--ssh] [--telnet] [--smtp] [--http] [--ftp] [--port <portspec>] |
- Levels of security
Choose one of the following levels of security:
--high
--medium
--disabled
- --trust
<device>
Listing a device here, such as eth0, allows all traffic coming
from that device to go through the firewall. To list more than
one device, use --trust eth0 --trust eth1. Do
NOT use a comma-separated format such as --trust eth0,
eth1.
- Allow incoming
Enabling these options allow the specified services to pass
through the firewall. --dhcp --ssh --telnet --smtp --http --ftp
- --port <portspec>
You can specify that ports be allowed through the firewall using
the port:protocol format. For example, if you wanted to allow
IMAP access through your firewall, you can specify
imap:tcp. You can also specify numeric ports
explicitly; for example, to allow UDP packets on port 1234
through, specify 1234:udp. To specify
multiple ports, separate them by commas.
- install (optional)
Tells the system to install a fresh system rather than upgrade
an existing system. This is the default mode.
You must use one of these four commands to specify what type of
kickstart installation is being performed:
- nfs
Install from the NFS server specified.
For example:
nfs --server <server> --dir <dir> |
- cdrom
Install from the first CD-ROM drive on the system.
For example:
- harddrive
Install from a Red Hat installation tree on a local drive, which
must be either vfat or ext2.
For example:
harddrive --partition <partition> --dir <dir> |
- url
Install from a Red Hat installation tree on a remote server via FTP
or HTTP.
For example:
url --url http://<server>/<dir> |
url --url ftp://<username>:<password>@<servername>;/<dir> |
- keyboard (required)
Sets system keyboard type. Here's the list of available
keyboards on i386 and Alpha machines:
azerty, be-latin1, be2-latin1, fr-latin0, fr-latin1, fr-pc, fr,
wangbe, ANSI-dvorak, dvorak-l, dvorak-r, dvorak, pc-dvorak-latin1,
tr_f-latin5, trf, bg, cf, cz-lat2-prog, cz-lat2, defkeymap,
defkeymap_V1.0, dk-latin1, dk. emacs, emacs2, es, fi-latin1, fi,
gr-pc, gr, hebrew, hu101, is-latin1, it-ibm, it, it2, jp106,
la-latin1, lt, lt.l4, nl, no-latin1, no, pc110, pl, pt-latin1,
pt-old, ro, ru-cp1251, ru-ms, ru-yawerty, ru, ru1, ru2, ru_win,
se-latin1, sk-prog-qwerty, sk-prog, sk-qwerty, tr_q-latin5, tralt,
trf, trq, ua, uk, us, croat, cz-us-qwertz, de-latin1-nodeadkeys,
de-latin1, de, fr_CH-latin1, fr_CH, hu, sg-latin1-lk450,
sg-latin1, sg, sk-prog-qwertz, sk-qwertz, slovene |
Here's the list for SPARC machines:
sun-pl-altgraph, sun-pl, sundvorak, sunkeymap, sunt4-es,
sunt4-no-latin1, sunt5-cz-us, sunt5-de-latin1, sunt5-es,
sunt5-fi-latin1, sunt5-fr-latin1, sunt5-ru, sunt5-uk, sunt5-us-cz |
- lang (required)
Sets the default language for the installed system. The
language you specify will be used during the installation and
will be used to configure any language-specific aspect of the
installed system. For example, to set the language to English,
the kickstart file should contain the following line:
Valid languages codes are the following (please note that these
are subject to change at any time):
cs_CZ, da_DK, en_US, fr_FR, de_DE, hu_HU, is_IS, it_IT,
ja_JP.eucJP, no_NO, ro_RO, sk_SK, sl_SI, sr_YU, es_ES,
ru_RU.KOI8-R, uk_UA.KOI8-U, sv_SE, tr_TR |
- lilo (required)
Specifies how the boot loader should be installed on the
system. By default, LILO installs on the MBR of the first disk, and
installs a dual-boot system if a DOS partition is found (the
DOS/Windows system will boot if the user types
dos at the
LILO: prompt).
- --append
<params>
Specifies kernel parameters.
- --linear
Use the linear LILO option; this is
only for backwards compatibility (and linear is now used
by default).
- --nolinear
Use the nolinear LILO option; linear
is now used by default.
- --location
Specifies where the LILO boot record is written. Valid
values are the following: mbr
(the default) or partition
(installs the boot loader on the first sector of the
partition containing the kernel). If no location is
specified, LILO is not installed.
- lilocheck (optional)
If lilocheck is present, the installation
program checks for LILO on the MBR of the first hard drive, and
reboots the system if it is found — in this case, no
installation is performed. This can prevent kickstart from
reinstalling an already installed system.
- mouse (required)
Configures the mouse for the system, both in GUI and text
modes. Options are:
- --device
<dev>
Device the mouse is on (such as --device ttyS0).
- --emulthree
If present, simultaneous clicks on the left and right
mouse buttons will be recognized as the middle mouse
button by the X Window System. This option should not
be used if you have a two button mouse.
After options, the mouse type may be specified as one of
the following:
alpsps/2, ascii, asciips/2, atibm, generic, generic3,
genericps/2, generic3ps/2, geniusnm, geniusnmps/2,
geniusnsps/2, thinking, thinkingps/2, logitech,
logitechcc, logibm, logimman, logimmanps/2, logimman+,
logimman+ps/2, microsoft, msnew, msintelli, msintellips/2,
msbm, mousesystems, mmseries, mmhittab, sun, none |
If the mouse command is given without any arguments, or
it is omitted, the installation program will attempt to
autodetect the mouse. This procedure works for most
modern mice.
- network (optional)
Configures network information for the system. If it is not
given and the kickstart installation does not require networking
(in other words, it's not installed over NFS), networking is not
configured for the system. If the installation does require
networking, the Red Hat Linux installation program assumes that the
installation should be done over eth0 via a dynamic IP address
(BOOTP/DHCP), and configures the final, installed system to
dynamically determine its IP address. The
network option configures networking
information for kickstart installations via a network as well as
for the installed system.
- --bootproto
One of dhcp,
bootp, or
static (defaults to DHCP, and
dhcp and
bootp are treated the same).
Must be static for static IP
information to be used.
- --device <device>
Used to select a specific Ethernet device for
installation. Note that using
--device
<device> will not be
effective unless the kickstart file is a local file
(such as ks=floppy), since the installation program will
configure the network to find the kickstart
file. Example:
network --bootproto dhcp --device eth0 |
- --ip
IP address for the machine to be installed.
- --gateway
Default gateway as an IP address.
- --nameserver
Primary name server, as an IP address.
- --netmask
Netmask for the installed system.
- --hostname
Hostname for the installed system.
There are three different methods of network configuration:
The DHCP method uses a DHCP server system to obtain its
networking configuration. As you might guess, the BOOTP method
is similar, requiring a BOOTP server to supply the networking
configuration.
The static method requires that you enter all the required
networking information in the kickstart file. As the name
implies, this information is static, and will be used during the
installation, and after the installation as well.
To direct a system to use DHCP to obtain its networking
configuration, use the following line:
To direct a machine to use BOOTP to obtain its networking
configuration, use the following line in the kickstart file:
network --bootproto bootp |
The line for static networking is more complex, as you must
include all network configuration information on one line.
You'll need to specify:
IP address
Netmask
Gateway IP address
Nameserver IP address
Here's an example static line:
network --bootproto static --ip 10.0.2.15 --netmask 255.255.255.0 --gateway 10.0.2.254 --nameserver 10.0.2.1 |
If you use the static method, be aware of the following two
restrictions:
All static networking configuration information must be
specified on one line; you cannot wrap
lines using a backslash, for example.
You can only specify one nameserver here. However, you can
use the kickstart file's %post section
(described in the section called %post — Post-Installation Configuration
Section) to add more name
servers, if needed.
- part (required for installs, ignored for
upgrades)
Creates a partition on the system. Partition requests are of the
form:
part <mntpoint> --size <size> [--grow]
[--onpart <partc>] [--ondisk <disk>]
[--onprimary <N>] [--asprimary] |
The <mntpoint> is where the
partition will be mounted and must be of one of the following
forms:
- /<mntpoint>
For example, /,
/usr, /home
- swap
The partition will be used as swap space.
- raid.<id>
The partition will be used for software RAID (see the
raid command later).
- --size <size>
The minimum partition size in megabytes. Specify an
integer value here such as 500. Do not append the number
with MB.
- --grow
Tells the partition to grow to fill available space (if
any), or up to the maximum size setting.
- --maxsize <size>
The maximum partition size in megabytes when the
partition is set to grow. Specify an integer value here,
and do not append the number with MB.
- --noformat
Tells the installation program not to format the
partition, for use with the --onpart
command.
- --onpart <part> or
--usepart <part>
Tells the installation program to put the partition on the
already existing device
<part>. For example,
partition /home --onpart hda1 will put
/home on
/dev/hda1, which must already exist.
- --ondisk <disk>
Forces the partition to be created on a particular disk.
For example, --ondisk sdb will put
the partition on the second disk on the system.
- --onprimary <N>
Forces the partition to be created on the primary
partition <N> or fail.
<N> can be 1 through
4. For example, --onprimary=1
specifies that the partition is to be created on the
first primary partition.
- --asprimary
Forces automatic allocation of the partition as a
primary partition or the partitioning will fail.
- --bytes-per-inode=<N>
<N> represents the
number of bytes per inode on the filesystem when it is
created. It must be given in decimal format. This
option is useful for applications where you want to
increase the number of inodes on the filesystem.
- --type=<X>
Sets partition type to
<X>, where
<X> is a numerical
value.
All partitions created will be formatted as part of the
installation process unless --noformat and
--onpart are used.
 | Note |
|---|
| | If --clearpart is used in the
ks.cfg file, then
--onpart cannot be used on a logical
partition.
|
 | Note |
|---|
| | If partitioning fails for any reason, diagnostic messages will
appear on virtual console 3.
|
- raid (optional)
Assembles a software RAID device. This command is of the form:
raid <mntpoint> --level <level> --device <mddevice><partitions*> |
The <mntpoint> is the location
where the RAID filesystem is mounted. If it is
/, the RAID level must be 1 unless a boot
partition (/boot) is present. If a boot
partition is present, the /boot partition
must be level 1 and the root (/) partition
can be any of the available types. The
<partitions*> (which denotes
that multiple partitions can be listed) lists the RAID
identifiers to add to the RAID array.
- --level <level>
RAID level to use (0, 1, or 5).
- --device <mddevice>
Name of the RAID device to use (such as md0 or m1).
RAID devices range from md0 to md7, and each may only be
used once.
The following example shows how to create a RAID level 1
partition for /, and a RAID level 5 for
/usr, assuming there are three SCSI disks
on the system. It also creates three swap partitions, one on
each drive.
part raid.01 --size 60 --ondisk sda
part raid.02 --size 60 --ondisk sdb
part raid.03 --size 60 --ondisk sdc |
part swap --size 128 --ondisk sda part swap --size 128 --ondisk
sdb part swap --size 128 --ondisk sdc |
part raid.11 --size 1 --grow --ondisk sda part raid.12 --size 1
--grow --ondisk sdb part raid.13 --size 1 --grow --ondisk sdc |
raid / --level 1 --device md0 raid.01 raid.02 raid.03 raid /usr
--level 5 --device md1 raid.11 raid.12 raid.13 |
- reboot (optional)
Reboot after the installation is complete (no
arguments). Normally, kickstart displays a message and waits for
the user to press a key before rebooting.
- rootpw (required)
rootpw [--iscrypted] <password>
Sets the system's root password to the
<password> argument.
- --iscrypted
If this is present, the password argument is assumed to
already be encrypted.
- skipx (optional)
If present, X is not configured on the installed system.
- timezone (required)
timezone [--utc] <timezone>
Sets the system time zone to
<timezone> which may be any of
the time zones listed by timeconfig.
- --utc
If present, the system assumes the hardware clock is set
to UTC (Greenwich Mean) time.
- upgrade (optional)
Tells the system to upgrade an existing system rather than
install a fresh system.
- xconfig (optional)
Configures the X Window System. If this option is not given, the
user will need to configure X manually during the installation,
if X was installed; this option should not be used if X is not
installed on the final system.
- --noprobe
Don't probe the monitor.
- --card <card>
Use card <card>; this
card name should be from the list of cards in
Xconfigurator. If this
argument is not provided,
Anaconda will probe the PCI
bus for the card.
- --monitor <mon>
Use monitor <mon>; this
monitor name should be from the list of monitors in
Xconfigurator. This is
ignored if --hsync or
--vsync is provided. If no
monitor information is provided, the installation
program tries to probe for it automatically.
- --hsync <sync>
Specifies the horizontal sync frequency of the monitor.
- --vsync <sync>
Specifies the vertical sync frequency of the monitor.
- --defaultdesktop=GNOME or
--defaultdesktop=KDE
Sets the default desktop to either GNOME or KDE (and
assumes that GNOME and/or KDE has been installed through
%packages).
- --startxonboot
Use a graphical login on the installed
system.
- zerombr (optional)
If zerombr is specified, and
yes is its sole argument, any
invalid partition tables found on disks are initialized. This
will destroy all of the contents of disks with invalid partition
tables. This command should be in the following format:
zerombr yes
No other format is effective.
Use the %packages command to begin a kickstart file
section that lists the packages you'd like to install (this is for
installations only, as package selection during upgrades is not
supported).
Packages can be specified by component or by individual package name.
The installation program defines several components that group
together related packages. See the
RedHat/base/comps file on any Red Hat Linux CD-ROM for a
list of components. The components are defined by the lines that
begin with a number followed by a space and then the component name.
Each package in that component is then listed, line-by-line.
Individual packages lack the leading number found in front of
component lines.
Additionally, there are three other types of lines in the
comps file:
- Architecture specific (alpha:, i386:, and sparc64:)
If a package name begins with an architecture type, you only
need to type in the package name, not the architecture name. For
example:
For i386: netscape-common you only need to
use the netscape-common part for that
specific package to be installed.
- Lines beginning with ?
Lines that begin with a ? are used by the
installation program and should not be altered.
- Lines beginning with --hide
If a package name begins with --hide, you
only need to type in the package name, without the
--hide. For example:
For --hide KDE Workstation you only need to
use the KDE Workstation part for that
specific package to be installed.
In most cases, it's only necessary to list the desired components and
not individual packages. Note that the Base
component is always selected by default, so it's not necessary to
specify it in the %packages section.
Here's an example %packages selection:
%packages
@ Networked Workstation
@ C Development
@ Web Server
@ X Window System
bsd-games |
As you can see, components are specified, one to a line, starting with
an @ symbol, a space, and then the full component
name as given in the comps file. Specify
individual packages with no additional characters (the
bsd-games line in the example above is an
individual package).
 | Note |
|---|
| | You can also direct the kickstart installation to use the
workstation- and server-class installations (or choose an everything
installation to install all packages). To do this, simply add
one of the following lines to the
%packages section:
|
@ Gnome Workstation
@ KDE Workstation
@ Server
@ Everything |
You can add commands to run on the system immediately after the
ks.cfg has been parsed. This section must be at
the end of the kickstart file (after the commands) and must start with
the %pre command. Note that you can access the
network in the %pre section; however,
name service has not been configured at this
point, so only IP addresses will work. Here's an example
%pre section:
%pre
# add comment to /etc/motd
echo "Kickstart-installed Red Hat Linux `/bin/date`" > /etc/motd
# add another nameserver
echo "nameserver 10.10.0.2" >> /etc/resolv.conf |
This section creates a message-of-the-day file containing the date the
kickstart installation took place, and gets around the
network command's limitation of only one name
server by adding another name server to
/etc/resolv.conf.
 | Note |
|---|
| | Note that the pre-install script is not run in the change root
environment.
|
You have the option of adding commands to run on the system once the
installation is complete. This section must be at the end of the
kickstart file and must start with the %post
command. Note, you can access the network in the
%post section; however, name
service has not been configured at this point, so only IP
addresses will work. Here's an example %post
section:
%post
# add comment to /etc/motd
echo "Kickstart-installed Red Hat Linux `/bin/date`" > /etc/motd
# add another nameserver
echo "nameserver 10.10.0.2" >> /etc/resolv.conf |
This section creates a message-of-the-day file containing the date the
kickstart installation took place, and gets around the
network command's limitation of one name server
only by adding another name server to
/etc/resolv.conf.
 | Note |
|---|
| | Note that the post-install script is run in a chroot environment;
therefore, performing tasks such as copying scripts or RPMs from the
installation media will not work.
|
- --nochroot
Allows you to specify commands that you would like to run
outside of the chroot environment.
The following example copies the file
/etc/resolv.conf to the filesystem that was
just installed.
%post --nochroot
cp /etc/resolv.conf /mnt/sysimage/etc/resolv.conf |
- --interpreter /usr/bin/perl
Allows you to specify a different scripting language, such as
Perl. Replace /usr/bin/perl with the
scripting language of your choice.
The following example uses a Perl script to replace
/etc/HOSTNAME.
%post --interpreter /usr/bin/perl
# replace /etc/HOSTNAME
open(HN, ">HOSTNAME");
print HN "1.2.3.4 an.ip.address\n"; |
|
Network sites:
|