Sunday, January 18, 2009

Kickstart Package Selection and Base Kickstart

So a while back I was looking at the Kickstart docs on the Package selection. I searched the net for a list of Packages to install other then @ base & @ core. Well buried in the docs, the following paragraph told me where to look.

"Packages can be specified by group or by individual package name, including with globs using the asterisk. The installation program defines several groups that contain related packages. Refer to the variant/repodata/comps-*.xml file on the first Red Hat Enterprise Linux CD-ROM for a list of groups."

I took the liberty of going though the file, pulling out all the package info for you, excluding the language packages.

admin-tools
authoring-and-publishing
base
base-x
core
development-libs
development-tools
dialup
dns-server
editors
engineering-and-scientific
ftp-server
games
gnome-desktop
gnome-software-development
graphical-internet
graphics
java
java-development
kde-desktop
kde-software-development
legacy-network-server
legacy-software-development
legacy-software-support
mail-server
mysql
network-server
news-server
office
openfabrics-enterprise-distribution
printing
ruby
server-cfg
smb-server
sound-and-video
sql-server
system-tools
text-internet
web-server
x-software-development
language-support
desktops
apps
development
servers
base-system

I also wanted to post my base.ks file for those who want to use it as a template for starting off with a basic Kickstart. The base OS install image size is about 1.9 gigs. This includes all the system admin tools, development stuff for gcc/make, development libs, emacs and pico. Remember to use grub-md5-crypt to create a hash for the root password.

# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
#Do Text install
text
# Firewall configuration
firewall --disabled
# Run the Setup Agent on first boot
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
#Install method
url --url http://192.168.1.11/install/
#network configuration
network --bootproto=dhcp
# Installation logging level
logging --level=info
#Clear all linux partiions
clearpart --all
#Create Linux Paritions
part swap --size=1024
part / --size 5000 --fstype ext3

#Tying in Custom Repo
repo --name=myrepo --baseurl=http://192.168.1.11/server/

#Root password
# use grub-md5-crypt to generate a md5 crypt hash
# default password is redhat
rootpw --iscrypted $1$GRwvp$HcYuBdNae5mlPyXwVUc1E0

#RHN Key
key --skip
# SELinux configuration
selinux --disable
# System timezone
timezone America/Los_Angeles
# Install OS instead of upgrade
install

%packages
@admin-tools
@base
@core
@development-tools
@development-libs
@editors
@text-internet
@system-tools