Chapter 1: Installing Red Hat Enterprise Linux
Understanding RHEL installation options, kickstart automation, and virtual machine setup.
Key Concepts
Installation Methods
| Method | Use Case | Notes |
|---|---|---|
DVD/ISO |
Manual installation |
Interactive, good for learning |
Kickstart |
Automated installation |
Reproducible, enterprise standard |
Network (PXE) |
Large deployments |
Requires DHCP/TFTP infrastructure |
Image-based |
Cloud/container |
Fastest, pre-built images |
Minimum Requirements
| Resource | Minimum |
|---|---|
RAM |
1.5 GB (2 GB recommended) |
Disk |
10 GB (20 GB recommended) |
CPU |
1 core (2+ recommended) |
Hands-On Exercises
Exercise 1.1: Create RHEL 9 VM with KVM
# Download Rocky Linux 9 (free RHEL clone)
curl -LO https://download.rockylinux.org/pub/rocky/9/isos/x86_64/Rocky-9-latest-x86_64-minimal.iso
# Create VM with virt-install
sudo virt-install \
--name rhcsa-server1 \
--ram 2048 \
--vcpus 2 \
--disk size=20 \
--os-variant rocky9 \
--cdrom ~/Rocky-9-latest-x86_64-minimal.iso \
--network network=default \
--graphics vnc
Exercise 1.2: Basic Kickstart File
Create /tmp/ks.cfg:
# RHCSA Lab Kickstart
#version=RHEL9
# System language
lang en_US.UTF-8
# Keyboard layout
keyboard us
# Network configuration
network --bootproto=dhcp --device=link --activate
network --hostname=server1.lab.local
# Root password (use openssl passwd -6 to generate)
rootpw --iscrypted $6$rounds=4096$...
# Create admin user
user --name=admin --groups=wheel --iscrypted --password=$6$...
# Timezone
timezone America/Los_Angeles --utc
# Partitioning
clearpart --all --initlabel
autopart --type=lvm
# Installation source
cdrom
# Packages
%packages
@^minimal-environment
vim-enhanced
bash-completion
%end
# Post-installation script
%post
systemctl enable cockpit.socket
%end
# Reboot after installation
reboot
Exercise 1.3: Installation Verification
After installation, verify:
# Check hostname
hostnamectl
# Check network
ip -4 addr show
# Check disk layout
lsblk
# Check RHEL version
cat /etc/redhat-release
# Check kernel
uname -r
Diagram: Installation Flow
D2 Source (render with Kroki or d2 CLI)
# RHEL Installation Flow
# Edit this D2 diagram as you learn
direction: down
title: RHEL 9 Installation Process {
shape: text
style.font-size: 24
}
boot: Boot from Media {
shape: oval
style.fill: "#e3f2fd"
}
media_check: Media Check {
shape: diamond
style.fill: "#fff3e0"
}
language: Select Language {
shape: rectangle
}
install_summary: Installation Summary {
shape: rectangle
style.fill: "#e8f5e9"
style.stroke: "#2e7d32"
style.stroke-width: 2
}
components: {
label: Configure Components
style.fill: "#f3e5f5"
keyboard: Keyboard Layout
network: Network & Hostname
time: Time & Date
software: Software Selection
storage: Installation Destination
root: Root Password
user: User Creation
}
begin: Begin Installation {
shape: oval
style.fill: "#bbdefb"
}
installing: Installing Packages {
shape: rectangle
style.fill: "#fff9c4"
}
reboot: Reboot {
shape: oval
style.fill: "#c8e6c9"
}
complete: Installation Complete {
shape: oval
style.fill: "#a5d6a7"
style.stroke: "#1b5e20"
style.stroke-width: 3
}
# Flow
boot -> media_check
media_check -> language: Pass
media_check -> boot: Fail
language -> install_summary
install_summary -> components.keyboard
install_summary -> components.network
install_summary -> components.time
install_summary -> components.software
install_summary -> components.storage
install_summary -> components.root
install_summary -> components.user
components.storage -> begin: Required
begin -> installing
installing -> reboot
reboot -> complete
Notes
Add your personal notes here as you work through the chapter.