4.2 KiB
RHEL 8.10 Offline Update Script
An interactive bash script for applying RHEL 8.10 updates from a local ISO file in air-gapped or disconnected environments.
Overview
This script guides administrators through the process of mounting an update ISO and applying patches to RHEL 8.10 systems that cannot reach Red Hat's CDN or Satellite servers.
Requirements
- RHEL 8.10 system
- Root or sudo access
- Update ISO:
Full_Latest_RHEL8_x86_64_patches_2026-01-13.iso - ~35 GB free disk space (if copying ISO locally)
Quick Start
# Download the script
chmod +x rhel8-iso-update.sh
# Run with sudo
sudo ./rhel8-iso-update.sh
Features
- Interactive prompts - Confirms each action before proceeding
- External media detection - Automatically finds the ISO on USB drives
- Unmounted USB support - Detects and offers to mount USB devices
- Progress feedback - Color-coded output for easy reading
- Reboot detection - Checks if a reboot is needed after updates
- Cleanup options - Offers to remove configs and unmount when finished
What the Script Does
| Step | Action |
|---|---|
| 1 | Locates the ISO file (local storage or external media) |
| 2 | Creates mount point at /media/JanPatch |
| 3 | Mounts the ISO |
| 4 | Creates repo file at /etc/yum.repos.d/JanPatch.repo |
| 5 | Refreshes DNF cache |
| 6 | Displays available updates |
| 7 | Applies updates |
| 8 | Checks if reboot is required |
| 9 | Cleanup (optional) |
Usage Examples
ISO Already Copied to Server
If the ISO is already at /var/isos/Full_Latest_RHEL8_x86_64_patches_2026-01-13.iso:
sudo ./rhel8-iso-update.sh
The script will detect it and proceed.
ISO on USB Drive
- Plug in the USB drive containing the ISO
- Run the script:
sudo ./rhel8-iso-update.sh
- The script will detect the USB and offer options:
- Copy ISO to local storage (recommended for faster updates)
- Use ISO directly from USB (no wait, but slower updates)
Manual ISO Path
If your ISO is in a non-standard location, the script will prompt you to enter the path manually.
Configuration
Default paths used by the script:
| Setting | Value |
|---|---|
| ISO filename | Full_Latest_RHEL8_x86_64_patches_2026-01-13.iso |
| Default ISO path | /var/isos/ |
| Mount point | /media/JanPatch |
| Repo file | /etc/yum.repos.d/JanPatch.repo |
| Repo name | dvd-rhel-patches |
To change these defaults, edit the Configuration section at the top of the script.
Repository Configuration
The script creates the following repo file:
[dvd-rhel-patches]
name=DVD for RHEL Patches
baseurl=file:///media/JanPatch
enabled=1
gpgcheck=0
GPG checking is disabled to avoid signature issues in disconnected environments.
Cleanup
At the end of the process, the script offers to:
- Disable the
dvd-rhel-patchesrepository - Remove the repo file
- Unmount the ISO
- Unmount USB drives (if used)
- Delete the ISO file to free up space
All cleanup actions require confirmation.
Troubleshooting
Script won't run
# Make sure it's executable
chmod +x rhel8-iso-update.sh
# Run with sudo
sudo ./rhel8-iso-update.sh
ISO not detected on USB
- Ensure the USB drive is plugged in before running the script
- Try running
lsblkto verify the system sees the drive - The script searches up to 3 directories deep on external media
"No repodata found" error
The ISO structure may differ from expected. Check the ISO contents:
sudo mount -o loop /path/to/iso /mnt/temp
ls -la /mnt/temp
find /mnt/temp -name "repodata" -type d
Update the baseurl in /etc/yum.repos.d/JanPatch.repo to point to the directory containing repodata/.
Updates failing with dependency errors
Try disabling other repos and using only the ISO:
sudo dnf update --disablerepo="*" --enablerepo="dvd-rhel-patches"
Manual Process
If you prefer to run the steps manually, see the accompanying guide: RHEL 8.10 Offline Update Guide
Files
| File | Description |
|---|---|
rhel8-iso-update.sh |
Interactive update script |
rhel8-iso-update-guide.md |
Manual step-by-step guide |
README.md |
This file |
Author
Cybersecurity Team
Last Updated
January 2026