Install GNOME on Rocky Linux 10 Using ISO (Offline)

Rocky Linux 10 installs as a minimal text-only server by default, and if you need a graphical desktop, you have to add GNOME yourself, and this guide shows you exactly how to do that, with or without internet access.

sudo mkdir -p /mnt/rocky10-iso

multi-user.target

There’s no need to reboot immediately. You can start the graphical login screen right away by starting the GDM service:

  • The first uses DNF to install GNOME from the online repositories, which is the easiest option if your system has internet access.
  • The second shows how to install GNOME offline using the Rocky Linux 10 DVD ISO as a local package repository, which is useful for air-gapped systems, secure lab environments, or machines without internet access.

sudo nano /etc/yum.repos.d/rocky10-local.repo

sudo systemctl start gdm

If this guide saved you time, who’s still wondering why their Rocky Linux server won’t show a desktop.
Conclusion

Now disable the online repositories so DNF won’t try to connect to the internet:
If you’re using a virtual machine, attach the ISO as a virtual DVD drive from your hypervisor.
You can also verify that the package directories exist:

Method 1: Install GNOME Online (With Internet Access)

scp /path/to/Rocky-10-latest-x86_64-dvd.iso user@your-server-ip:/tmp/

If the graphical login screen doesn’t appear, check the GDM logs for any errors:
sudo systemctl set-default graphical.target

gnome-shell –version

sudo systemctl start gdm

Removed “/etc/systemd/system/default.target”.
Created symlink /etc/systemd/system/default.target → /usr/lib/systemd/system/graphical.target.

If you want to switch back to the graphical desktop later, set the default target back to graphical.target and reboot:
sudo dnf repolist

repo id repo name
rocky10-appstream-local Rocky Linux 10 – AppStream (Local ISO)
rocky10-baseos-local Rocky Linux 10 – BaseOS (Local ISO)

sudo dnf group list

Filesystem Size Used Avail Use% Mounted on
/dev/sda3 40G 3.2G 37G 8% /

sudo mount -a

First, make the DVD ISO available on your system.
Before you begin, make sure you have the following:

Step 4: Start the GUI Without Rebooting

df -h /

GNOME Shell 47.x

If your Rocky Linux 10 system doesn’t have internet access, you can install GNOME directly from the Rocky Linux 10 DVD ISO. Instead of downloading packages from online repositories, DNF reads them from the mounted ISO.
Tip: If you prefer a smaller desktop installation without the extra server-related tools, install the GNOME group instead:

  • VirtualBox: Install VirtualBox Guest Additions.
  • VMware: Install VMware Tools or Open VM Tools.
  • KVM/QEMU: Use the virtio or QXL display adapter for the best compatibility.

Step 5: Reboot and Confirm

sudo dnf update -y

If you chose the Minimal Install option during the Rocky Linux 10 installation, your system includes only the essential packages needed to run without any desktop environment, which means no graphical login screen and no GUI applications.
First, check the current default target:

sudo systemctl start gdm

If your Rocky Linux 10 system has an internet connection, you can use the dnf command to download all the required packages directly from the official Rocky Linux repositories.
sudo systemctl get-default

sudo dnf group install “GNOME” -y

If they’re missing, you’ve probably mounted the Minimal or Boot ISO instead of the DVD ISO.
Finally, reboot the system to confirm that it starts directly in the graphical desktop:
/tmp/Rocky-10-latest-x86_64-dvd.iso /mnt/rocky10-iso iso9660 loop,ro 0 0

This tutorial was tested on a minimal installation of Rocky Linux 10, but the same installation instructions also work on AlmaLinux 10 and RHEL 10.
Create a new DNF repository file:
Before installing new software, it’s a good idea to update your existing packages, which ensures you’re installing the latest versions and helps avoid dependency issues.
First, change the default boot target to multi-user, stop the graphical login manager, and then reboot the system:
sudo mount -o loop /tmp/Rocky-10-latest-x86_64-dvd.iso /mnt/rocky10-iso

If you no longer need the graphical desktop, you can configure Rocky Linux to boot back into command-line mode.
To check how much free disk space you have, run:
ls /mnt/rocky10-iso/

Finally, reboot the system to make sure it starts directly in graphical mode.
sudo dnf config-manager –disable * 2>/dev/null
sudo dnf config-manager –enable rocky10-baseos-local rocky10-appstream-local

Important: Use the Rocky Linux 10 DVD ISO, not the Minimal or Boot ISO, because the DVD image contains the BaseOS and AppStream repositories required to install GNOME.
sudo systemctl set-default multi-user.target
sudo systemctl stop gdm
sudo reboot

[rocky10-baseos-local]
name=Rocky Linux 10 – BaseOS (Local ISO)
baseurl=file:///mnt/rocky10-iso/BaseOS
enabled=1
gpgcheck=1
gpgkey=file:///mnt/rocky10-iso/RPM-GPG-KEY-Rocky-10

[rocky10-appstream-local]
name=Rocky Linux 10 – AppStream (Local ISO)
baseurl=file:///mnt/rocky10-iso/AppStream
enabled=1
gpgcheck=1
gpgkey=file:///mnt/rocky10-iso/RPM-GPG-KEY-Rocky-10

To mount it automatically during boot, add the following entry to /etc/fstab:
ls /mnt/rocky10-iso/BaseOS
ls /mnt/rocky10-iso/AppStream

Step 4: Install GNOME from the Local Repo

Rocky Linux groups related packages together, so instead of installing hundreds of individual packages, you can install the complete GNOME desktop with a single command.
sudo dnf group install “Server with GUI” -y

Installing GNOME doesn’t automatically change the system’s default boot mode, because a minimal Rocky Linux installation starts in multi-user.target, which is command-line mode.

Step 5: Set Graphical Boot and Start GDM

sudo reboot

If you run into any problems during the installation, such as package errors, GDM failing to start, or display issues inside a virtual machine, leave a comment below with your setup and the exact error message. I’ll be happy to help you troubleshoot the issue.

This guide covers two installation methods.
AppStream BaseOS EFI LICENSE RPM-GPG-KEY-Rocky-10 images isolinux media.repo

sudo systemctl set-default graphical.target
sudo reboot

mount: /mnt/rocky10-iso: WARNING: source write-protected, mounted read-only.

Whichever method you choose, you’ll end up with a fully functional GNOME desktop running on a minimal Rocky Linux 10 installation. You also learned how to configure the system to boot into graphical mode by default, switch back to text mode when needed, and troubleshoot common issues during the installation.
ls -lh /tmp/Rocky-10-latest-x86_64-dvd.iso

Step 2: Mount the ISO

sudo dnf group install “Server with GUI” -y

sudo journalctl -u gdm -n 50

If you’re using a physical server, copy the ISO to the machine. For example:
After the installation finishes, configure the system to boot into the graphical interface:
sudo systemctl set-default graphical.target

Warning: If you move or delete the ISO file after adding it to /etc/fstab, the system may pause during boot while trying to mount it. If you no longer need the ISO, remove the corresponding /etc/fstab entry before deleting or relocating the file.
Once the copy finishes, verify that the ISO is present:
This setup is ideal for servers because it’s lightweight and uses fewer system resources. However, if you’re using your system as a workstation, a virtual machine, or simply prefer working with a graphical interface, you’ll probably want to install GNOME.
sudo reboot

Optional: Mount the ISO Automatically at Boot

By default, the ISO is mounted only for the current session. After a reboot, you’ll need to mount it again if you want to install more packages from it.

If this article helped, with someone on your team.
TecMint Weekly Newsletter
Get the Learn Linux 7 Days Crash Course free when you join 34,000+ Linux professionals reading every Thursday.
Check your email for a magic link to get started.
Something went wrong. Please try again.

Similar Posts