Installing Linux from a PXE Boot Install using KickStart

Installing Linux from a PXE Boot Install using KickStart is quite a complex process with many stages, so I thought that I would break it down. This is how I like to stage systems.

When staging across multiple subnets in different VLAN’s across firewalls this becomes much more complex.

> BIOS sends a DHCP broadcast
< DHCP server sends the IP address, PXE filename (gpxelinux.0) and the TFTP Server [called the next-server option]
> BIOS TFTP request for PXE file
< TFTP server send PXE file
> Run PXE image on the client and search for the “gpxelinux.0 config file” first using the hardware type (using its ARP type code) and address, and then searches for a filename called “default” [we use this] on the TFTP server
< TFTP Transfer “default” file
> Display PXE Boot Menu
> Admin selects a host from the menu which relates to the the kernel and initrd.img / initramfs.img (initial ramdisk with livenet/dmsquash-live module’s) and kickstart file
< TFTP Send {vmlinuz[kernel], initrd.img or initramfs.img}
> Run kernel and start initial ramdisk and then request {kickstart file, install.img} via HTTP
< HTTP server sends kickstart file and install.img (initial root filesystem containing Anaconda)
> ANACONDA reads kickstart file and attempts an unattended installation, i.e. initialises kickstart network options within the the installer environment, so here it re-requests the same fixed-IP address via the DHCP Server
Kickstart also formats and partitions the disk, creates fs, sends requests for RPM’s, disable host firewalling etc
< Send client RPM’s
> Client request for post-install scripts if configured in ks file
< Write network interface configuration files and static routes which are used when the box is rebooted

These are the ports that you need to consider, when defining firewall rules.

67/udp DHCP
69/udp TFTP
4011/udp proxy dhcp

This entry was posted in linux. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s