Tag Archives: automated

A simple Kickstart File I thought I’d share with you

I recently took delivery of 18 servers each of which required a basic operating system installed and not much else – except for a /oracle filesystem creating. I thought i’d share the kickstart file with you plus one or two other things I needed to do to get kickstart working properly.

  1. setup a webserver to serve the kickstart files. I used IIS: I created a folder to contain the kickstart files on my webserver (D:\kickstart) and create a virtual directory (within an existing site) which pointed at that directory. permissions on the folder and virtual directory were set to read only with no script access.
  2. create the kickstart file (server1.ks) as detailed at the end of this post and save it in d:\kickstart on my webserver
  3. make sure the webserver is started..
  4. boot my server with an install DVD in it (I used an IBM RSA/IMM and mounted an iso image which presented itself to my server as a cd/dvd-rom). Make sure the server boots from the DVD!
  5. At the boot: prompt type linux ip=172.24.1.3 gateway=172.24.1.1 dns=172.24.1.2 netmask=255.255.255.0 ksdevice=eth0 ks=http://your.serv.er/kickstart/server1.ks ksdevice=eth0   NB: your settings will reflect the network settings in your kickstart file!
  6. Sit back and wait.. and your server will build – though on occassion I would be asked to ‘okay’ the disk configuration. Ultimately the process took about 10-15 minutes for me. Joy. If your server can’t find the kickstart file make sure the web server is up and the ethernet port you connect to is eth0 – unfortunately connecting up the other ethernet ports in your server to your switch is the quickest way to determine eth0, especially if you have a load of ethernet ports in your server. Or you can set ksdevice= to eth1, eth2 etc if you are gifted with lots of ethernet interfaces and have the time for re-editing kickstart files and rebooting ad nauseum.
Here’s the contents of my Kickstart file.. the limitations of the blogger.com column makes some lines spread across two or more lines. Please be aware of this if you copy any of the text below.

#BEGINNING OF FILE
#Step thru the phases of the installation automatically (without prompting you – though you may be asked to confirm disk partitioning…)
autostep
#Skip The installation code/key
key –skip
# System authorization information
auth –useshadow –enablemd5
# System bootloader configuration
bootloader –location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart –all –initlabel
# Use graphical install
graphical
# Firewall configuration
firewall –disabled
# Run the Setup Agent on first boot
firstboot –disable
# System keyboard
keyboard uk
# System language
lang en_GB
# Installation logging level
logging –level=info
# Use CDROM installation media
cdrom
# Network information
# gateway is 172.24.1.1, server ip is 172.24.1.3, dns server is 172.24.1.2, netmask is 255.255.255.0, interface is active on boot and hostname is.. self explanatory..
network –bootproto=static –device=eth0 –gateway=172.24.1.1 –ip=172.24.1.3 –nameserver=172.24.1.2 –netmask=255.255.255.0 –onboot=on –hostname myserver.mydomain.com
network –device eth1 –onboot no –bootproto dhcp –hostname myserver.mydomain.com
# Reboot after installation
reboot
#Root password – Only set this if you know your password – use system-config-kickstart to create a root password and paste it below!
#rootpw –iscrypted $1$odxRDT6F$BHEEBLEPJJ43rvd3wKAQ4/
# SELinux configuration
selinux –disabled
# System timezone
timezone Europe/London
# Install OS instead of upgrade
install
# X Window System configuration information
xconfig –defaultdesktop=GNOME –depth=32 –resolution=1024×768 –startxonboot
# Disk partitioning information
# Create a 100MB boot partition
part /boot –bytes-per-inode=4096 –fstype=”ext3″ –size=100
# Create a 32GB Swap Partition (My particular machine has a *lot* of memory)
part swap –bytes-per-inode=4096 –fstype=”swap” –size=34816
# Create a 10GB root ‘/’ partition
part / –bytes-per-inode=4096 –fstype=”ext3″ –size=10240
# LV creation
# Create the partition to house the Volume Group (NB: I have massively oversized the maxsize parameter for growth purposes! Beware!!)
# This saves having to specify the VG size if you’re going to use the kickstart file across servers with different hard disk sizes
part pv.17 –size=1 –maxsize=1000000000 –grow
# Create the volume group
volgroup oraclevg –pesize=32768 pv.17
# Create the LV within the volume group (percent parameter set at 100% so that the LV will use ALL available space on the device! Beware!)
# This saves having to specify the LV size if you’re going to use the kickstart file across servers with different hard disk sizes and
# want to use all of the remaining disk space for the LV.
logvol /oracle –fstype ext3 –name=oraclelv –vgname=oraclevg –percent=100


# Nothing sophisticted about the packages section. tailor to your needs..
%packages
@admin-tools
@base
@core
@dialup
@editors
@gnome-desktop
@games
@graphical-internet
@graphics
@java
@legacy-software-support
@office
@printing
@sound-and-video
@text-internet
@base-x
kexec-tools
fipscheck
device-mapper-multipath
sgpio
emacs
libsane-hpaio
xorg-x11-utils
xorg-x11-server-Xnest
#END OF FILE

Let me know how you get on. If you get on.