====== OS Install: Kickstart Examples ====== **General Information** Kickstart file examples. **Checklist** * Distro(s): Enterprise Linux 6/7 ---- ====== External Resources ====== * [[https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Installation_Guide/s1-kickstart2-options.html|RHEL Kickstart Options]] ---- ====== Kickstart Install ====== See this page for the complete process: [[linux_wiki:os_install_bare_metal|OS Install: Bare Metal]] ---- ====== CentOS 6 Example Kickstart File (bios) ====== The following kickstart file performs a network install of CentOS 6 minimal, on /dev/sda, using MBR, with LVM, and reboots after installation. **Modify the encrypted root password before using.** #### Title: CentOS 6 Generic Kickstart file for BIOS systems #### Description: Uses /dev/sda, MBR, and LVM to prepare a CentOS minimal installed system. ######################################## #### CUSTOMIZE THESE SECTIONS BELOW #### ######################################## ## Install Location ## install nfs --server=10.0.0.200 --dir=/iso/centos6.7-dvd ## Locale Settings ## lang en_US.UTF-8 keyboard us ## System Configuration ## rootpw --iscrypted ####################################### #### END OF CUSTOMIZATION SECTIONS #### ####################################### ## Networking ## #network settings are inherited from the kernel image boot options in order to keep the kickstart generic ## System Configuration ## firewall --service=ssh authconfig --enableshadow --passalgo=sha512 selinux --disabled timezone --utc America/Chicago ## Disk Partitioning ## bootloader --location=mbr --driveorder=sda --append="crashkernel=auto" # Clear Partitions => clear disk /dev/sda partitions, initialize partition tables (zerombr) # clearpart --drives=sda --all zerombr # Physical Partitions # part /boot --fstype=ext4 --size=512 --ondisk=sda part pv.01 --grow --size=26624 --ondisk=sda # LVM Setup # volgroup vglocal --pesize=4096 pv.01 logvol /home --fstype=ext4 --name=lvhome --vgname=vglocal --size=4096 logvol / --fstype=ext4 --name=lvroot --vgname=vglocal --size=4096 logvol swap --name=lvswap --vgname=vglocal --size=8192 logvol /tmp --fstype=ext4 --name=lvtmp --vgname=vglocal --size=2048 logvol /var --fstype=ext4 --name=lvvar --vgname=vglocal --size=4096 ## Packages to Install ## %packages @core @server-policy @workstation-policy nfs-utils %end ## Reboot After Installation ## reboot --eject #### Auto execute post install commands #### %post --interpreter /bin/sh --log=/root/ks-post.log ( ## Enter post install commands here to execute prior to reboot # Useful for performing something like the below example: # Startup rpcbind for NFS #service rpcbind start # Mount admin share #mount -vt nfs 10.1.2.3:/admin /mnt # Create /root/scripts dir #mkdir /root/scripts # Copy the firstboot script to the new dir, set owner/permissions #cp -v /mnt/deploy/firstboot/firstboot.sh /root/scripts/ #chown -Rv root:root /root/scripts #chmod -Rv 700 /root/scripts # Create line in rc.local to auto-execute the firstboot script #echo "/root/scripts/firstboot.sh" >> /etc/rc.d/rc.local # Un-mount admin share #umount -v /mnt ) %end ---- ====== CentOS 7 Example Kickstart File (bios) ====== **Modify the encrypted root password before using.** #### Title: CentOS 7 Generic Kickstart file for BIOS systems #### Description: Uses /dev/sda, MBR, and LVM to prepare a CentOS minimal installed system. ######################################## #### CUSTOMIZE THESE SECTIONS BELOW #### ######################################## ## Install Location ## graphical nfs --server=10.1.2.3 --dir=/iso/centos7.2-dvd ## Locale Settings ## keyboard --vckeymap=us --xlayouts='us' lang en_US.UTF-8 timezone America/Chicago --isUtc --ntpservers=x.x.x.x,x.x.x.x ## System Configuration ## rootpw --iscrypted ####################################### #### END OF CUSTOMIZATION SECTIONS #### ####################################### ## Networking ## #network settings are inherited from the kernel image boot options in order to keep the kickstart generic ## System Configuration ## auth --enableshadow --passalgo=sha512 eula --agreed firewall --service=ssh selinux --disabled ## Disk Partitioning ## ignoredisk --only-use=sda bootloader --location=mbr --boot-drive=sda clearpart --all --initlabel --drives=sda zerombr # Physical Partitions # part /boot --fstype="ext4" --ondisk=sda --size=512 part pv.01 --fstype="lvmpv" --ondisk=sda --grow --size=18512 # LVM Setup # volgroup vglocal --pesize=4096 pv.01 logvol /tmp --fstype="ext4" --size=2048 --name=lvtmp --vgname=vglocal logvol swap --fstype="swap" --size=8192 --name=lvswap --vgname=vglocal logvol /home --fstype="ext4" --size=4096 --name=lvhome --vgname=vglocal logvol / --fstype="ext4" --size=4096 --name=lvroot --vgname=vglocal logvol /var --fstype="ext4" --size=4096 --name=lvvar --vgname=vglocal ## System services ## services --enabled="chronyd" ## Packages to Install ## %packages @^minimal @core chrony nfs-utils %end ## KDUMP - Disable ## %addon com_redhat_kdump --disable --reserve-mb='auto' %end ## Reboot After Installation ## reboot --eject #### Auto execute post install commands #### %post --interpreter /bin/sh --log=/root/ks-post.log ( ## Enter post install commands here to execute prior to reboot # Useful for performing something like the below example: # Startup rpcbind for NFS #systemctl start rpcbind # Mount admin share #mount -vt nfs 10.1.2.3:/admin /mnt # Create /root/scripts dir #mkdir /root/scripts # Copy the firstboot script to the new dir, set owner/permissions #cp -v /mnt/deploy/firstboot/firstboot.sh /root/scripts/ #chown -Rv root:root /root/scripts #chmod -Rv 700 /root/scripts # Copy firstboot service unit to system, set owner/permissions #cp -v /mnt/deploy/firstboot/firstboot.service /etc/systemd/system/ #chown -v root:root /etc/systemd/system/firstboot.service #chmod -v 644 /etc/systemd/system/firstboot.service # Enable firstboot service for next boot #systemctl enable firstboot.service # Un-mount admin share #umount -v /mnt ) %end ---- ====== CentOS 6/7 EFI Kickstart ====== The only difference for EFI based systems in a kickstart file is the addition of a /boot/efi partition. It is placed in the "Physical Partitions" section after the /boot partition. # Physical Partitions # part /boot --fstype="ext4" --ondisk=sda --size=512 part /boot/efi --fstype="efi" --ondisk=sda --size=512 --fsoptions="umask=0077,shortname=winnt" part pv.01 --fstype="lvmpv" --ondisk=sda --grow --size=18512 ----