15%

Save 15% on All Hosting Services

Test your skills and get Discount on any hosting plan

Use code:

Skills
Get Started
09.10.2024

Ubuntu System Requirements and Installation Guide: Complete Technical Reference

Ubuntu remains the most widely deployed Linux distribution across both consumer hardware and production server infrastructure. Before committing to an installation, understanding the precise hardware thresholds β€” and the real-world implications of falling below them β€” separates a stable deployment from a frustrating troubleshooting exercise.

Direct answer: Ubuntu Desktop 24.04 LTS requires a minimum of a 2 GHz dual-core processor, 4 GB RAM, and 25 GB of disk space. Ubuntu Server 24.04 LTS can run on as little as 512 MB RAM and 2.5 GB of storage, making it viable for constrained environments and cloud VPS instances alike.

Why System Requirements Vary Across Ubuntu Variants

Ubuntu ships in several distinct installation profiles, each with a fundamentally different resource footprint. The GNOME-based Desktop edition carries the heaviest overhead due to its compositor, display server (Wayland by default since 22.04), and bundled application stack. The Server edition strips all of this away, leaving a headless environment optimized for throughput and uptime. The Minimal Install sits between the two: it retains the graphical installer path but omits LibreOffice, Thunderbird, and most media applications.

Understanding which profile matches your use case before downloading the ISO prevents wasted time and avoids post-installation bloat removal.

System Requirements for Ubuntu Desktop

Ubuntu Desktop targets end-user workstations, developer machines, and educational environments. The GNOME Shell desktop environment is the primary driver of resource consumption.

Minimum Requirements (Ubuntu Desktop 24.04 LTS)

  • Processor: 2 GHz dual-core (x86-64 architecture mandatory; 32-bit support was dropped after Ubuntu 18.04)
  • RAM: 4 GB (live session and installer require this; the installed system can technically idle lower, but expect severe swap thrashing below 4 GB)
  • Storage: 25 GB free disk space
  • Display: 1024×768 resolution minimum; VGA or better
  • Firmware: UEFI or legacy BIOS both supported; Secure Boot compatible
  • Installation media: USB port (DVD support exists but is increasingly irrelevant)
  • Processor: Quad-core 64-bit, 2 GHz or faster (Intel Core i5/i7, AMD Ryzen 5/7 generation)
  • RAM: 8 GB minimum for comfortable multitasking; 16 GB for development workloads with Docker or virtual machines
  • Storage: 50 GB or more; NVMe SSD strongly preferred over HDD for GNOME responsiveness
  • Graphics: GPU with Vulkan support for full GNOME visual effects; NVIDIA proprietary drivers installable post-setup
  • Network: Wired or Wi-Fi for live updates during installation

Critical pitfall: Running Ubuntu Desktop on a spinning hard drive with exactly 4 GB RAM produces a technically "supported" but practically sluggish system. GNOME's compositor alone can consume 300–500 MB of RAM at idle. Budget at least 8 GB if the machine will run a browser with multiple tabs simultaneously.

System Requirements for Ubuntu Server

Ubuntu Server is purpose-built for headless operation. There is no display manager, no desktop compositor, and no audio subsystem loaded by default. This dramatically reduces the baseline resource requirement and makes it the standard choice for VPS Hosting deployments, containerized workloads, and bare-metal rack servers.

Minimum Requirements (Ubuntu Server 24.04 LTS)

  • Processor: 1 GHz single-core (64-bit only; x86-64, ARM64, RISC-V, and IBM Z architectures are officially supported)
  • RAM: 512 MB (1 GB strongly recommended for package management operations; apt can exhaust 512 MB during large upgrades)
  • Storage: 2.5 GB for a minimal base install; plan for at least 10 GB once logs, package caches, and application data accumulate
  • Network: Required β€” the server installer fetches updated package indexes during setup
  • No GPU required
  • Processor: 2 GHz dual-core or better; for database or web server roles, more cores directly translate to concurrent connection capacity
  • RAM: 2 GB baseline; 4–8 GB for LAMP/LEMP stacks; 16 GB+ for MySQL, PostgreSQL, or Redis under production load
  • Storage: 20 GB minimum; production deployments should separate /var/log, /var/lib (database data directories), and /home onto dedicated partitions or volumes
  • Network: Gigabit Ethernet for any file-serving or high-traffic role

Edge case to know: Ubuntu Server's subiquity installer requires at least 1 GB RAM to run reliably. On machines with exactly 512 MB, the installer itself may OOM-kill background processes mid-installation. Use the alternative debian-installer based mini ISO for genuinely constrained hardware.

System Requirements for Ubuntu Minimal Installation

The Minimal Install option appears in the Ubuntu Desktop installer as a checkbox, not as a separate ISO. It installs the base GNOME session without the full application suite.

Minimum Requirements

  • Processor: 1 GHz dual-core (64-bit)
  • RAM: 1 GB (2 GB recommended)
  • Storage: 10 GB minimum; 20 GB recommended for post-install software additions
  • Display: 1024×768

This profile is well-suited for thin clients, older hardware repurposing, or developers who want a clean Ubuntu base without immediately uninstalling 2 GB of applications they will never use.

Comprehensive Requirements Comparison Table

SpecificationUbuntu Desktop (Min)Ubuntu Desktop (Rec)Ubuntu Server (Min)Ubuntu Server (Rec)Ubuntu Minimal (Min)
CPU Architecturex86-64x86-64x86-64 / ARM64x86-64 / ARM64x86-64
CPU Speed2 GHz dual-core2 GHz quad-core1 GHz single-core2 GHz dual-core1 GHz dual-core
RAM4 GB8–16 GB512 MB2–4 GB1 GB
Storage25 GB50 GB+2.5 GB20 GB+10 GB
GPU RequiredYes (basic)Yes (3D accel)NoNoYes (basic)
GUIGNOME (Wayland)GNOME (Wayland)None (CLI only)None (CLI only)GNOME (minimal)
Typical Use CaseWorkstationDeveloper / Power userCloud VPS, serverProduction serverCustom base system

Ubuntu LTS vs. Non-LTS: Hardware Support Implications

Long-Term Support (LTS) releases β€” 20.04, 22.04, 24.04 β€” receive five years of standard security maintenance and up to ten years under Ubuntu Pro. Non-LTS releases (e.g., 23.10, 24.10) receive only nine months of support but ship newer kernels that may include drivers for very recent hardware.

Practical guidance: For servers and Dedicated Servers in production, always deploy an LTS release. For a laptop purchased in the last six months with a cutting-edge Wi-Fi chipset or GPU, a non-LTS release may provide better out-of-the-box hardware support until the next LTS catches up.

Pre-Installation Checklist

Before touching the installer, complete these steps in order:

  1. Verify hardware compatibility β€” Cross-reference your CPU model against Ubuntu's certified hardware list at ubuntu.com/certified. Pay particular attention to NVIDIA GPU driver availability and Wi-Fi chipset support (Broadcom adapters frequently require non-free firmware).
  2. Download the correct ISO β€” Use the official Ubuntu releases page. Verify the SHA256 checksum before writing to USB.
sha256sum ubuntu-24.04-desktop-amd64.iso

Compare the output against the hash published on the Ubuntu download page. A mismatch indicates a corrupted or tampered download.

  1. Create a bootable USB drive β€” On Linux, dd is the most reliable method:
sudo dd if=ubuntu-24.04-desktop-amd64.iso of=/dev/sdX bs=4M status=progress oflag=sync

Replace /dev/sdX with your actual USB device identifier (verify with lsblk first β€” writing to the wrong device destroys data). On Windows, Rufus in DD image mode produces the most compatible result. On macOS, balenaEtcher is the standard tool.

  1. Back up existing data β€” If the target machine has an existing OS, back up to an external drive or cloud storage before proceeding. The "Erase disk" option in the Ubuntu installer is irreversible.
  2. Disable Secure Boot (conditionally) β€” Ubuntu 24.04 supports Secure Boot natively for standard installations. However, if you plan to install third-party NVIDIA drivers or custom kernel modules immediately post-install, temporarily disabling Secure Boot simplifies the initial setup. Re-enable it after enrolling the MOK (Machine Owner Key).
  3. Note your partition layout β€” Run lsblk or fdisk -l from a live environment to map existing partitions before making decisions in the installer.

Step-by-Step Ubuntu Installation

Step 1: Boot from USB

Insert the prepared USB drive. Power on the machine and enter the UEFI/BIOS firmware interface β€” the key varies by manufacturer (F2, F10, F12, Delete, or Esc are common). Navigate to the Boot Order or Boot Priority section and move the USB device to the top. Save and exit.

On modern UEFI systems, you can often bypass the full BIOS menu by pressing F12 (or equivalent) at POST to access a one-time boot device selection menu.

Step 2: Choose Installation Mode

The Ubuntu Desktop live environment boots into a GNOME session. From the desktop, launch the installer. The Ubuntu Server installer (subiquity) presents a TUI (text-based user interface) directly.

Select your language, then choose between Try Ubuntu (runs entirely from RAM, non-destructive) and Install Ubuntu. Using "Try Ubuntu" first is advisable on unfamiliar hardware β€” it lets you verify Wi-Fi, display, and audio functionality before committing to installation.

Step 3: Configure Installation Settings

  • Keyboard layout: The installer can auto-detect your keyboard. If it guesses incorrectly, select manually.
  • Installation type:
  • Normal Installation β€” Full GNOME desktop with Firefox, LibreOffice, and standard utilities (~3 GB additional packages)
  • Minimal Installation β€” Base GNOME session only
  • Third-party software: Check this box to include ubuntu-restricted-extras, NVIDIA drivers (if detected), and Wi-Fi firmware for Broadcom/Realtek chipsets. This requires an internet connection during installation.

Step 4: Disk Partitioning

This step carries the highest risk of data loss. Ubuntu offers three paths:

Option A β€” Erase disk and install Ubuntu

The installer wipes the entire target disk and creates an optimized partition layout automatically. For UEFI systems, this creates a 512 MB EFI System Partition (ESP), a swap partition (size based on RAM), and a root (/) ext4 or btrfs partition consuming the remainder.

Option B β€” Install alongside existing OS (dual-boot)

The installer resizes the existing partition and allocates free space for Ubuntu. This is functional but carries risk if the existing OS partition is fragmented or nearly full. Always defragment Windows NTFS partitions and run chkdsk before allowing Ubuntu to resize them.

Option C β€” Manual partitioning ("Something else")

Recommended for advanced users, multi-disk setups, or when you want explicit control over filesystem types and mount points. A production-grade partition scheme for a server:

Mount PointFilesystemRecommended SizePurpose
`/boot/efi`FAT32512 MBEFI System Partition
`/boot`ext41 GBKernel and initramfs files
`/`ext4 or btrfs20–30 GBOS and installed packages
`/var`ext420 GB+Logs, package cache, databases
`/home`ext4Remaining spaceUser data
`swap`swap1–2x RAM (up to 8 GB)Virtual memory

Separating /var onto its own partition prevents runaway logs from filling the root filesystem and crashing the OS β€” a failure mode that catches many administrators off guard in production.

Step 5: User Account and Hostname Configuration

  • Full name: Display name only, not used for authentication
  • Username: Lowercase, no spaces; this becomes your primary login and the name of your home directory under /home/
  • Password: Use a strong passphrase; this account receives sudo privileges by default
  • Hostname: Choose something meaningful for network identification, especially important if you are configuring Email Hosting or running a mail server where the hostname affects PTR records and SMTP reputation

Auto-login: Disable this on any machine that is not physically secured. On servers, it is irrelevant since there is no display manager.

Step 6: Complete Installation and Reboot

The installer copies files, installs the bootloader (GRUB2 by default), and configures the initial ramdisk. On a modern NVMe SSD, this takes 5–8 minutes. On a spinning hard drive, expect 15–25 minutes.

When prompted, remove the USB drive and press Enter. The system reboots into the newly installed Ubuntu environment.

Post-Installation: Essential Configuration Steps

Update the System Immediately

The first action after any fresh installation should be a full system update. The ISO image may be months old, and security patches accumulate quickly:

sudo apt update && sudo apt upgrade -y

For Ubuntu Server, also run:

sudo apt autoremove -y && sudo apt autoclean

Configure Automatic Security Updates

Ubuntu's unattended-upgrades package handles security patches automatically. Verify it is active:

sudo systemctl status unattended-upgrades

If not running, install and enable it:

sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades

Set Up a Firewall

ufw (Uncomplicated Firewall) ships with Ubuntu but is disabled by default. Enable it with a safe baseline:

sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status verbose

For a web server, additionally allow HTTP and HTTPS:

sudo ufw allow 'Nginx Full'

or

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Install an SSL Certificate

If you are deploying a web-facing service on Ubuntu Server, obtaining and configuring an SSL/TLS certificate is non-negotiable for both security and SEO. SSL Certificates from a trusted CA can be installed via Certbot for Let's Encrypt or deployed manually. Certbot automates renewal and NGINX/Apache configuration:

sudo apt install certbot python3-certbot-nginx -y
sudo certbot --nginx -d yourdomain.com

Configure SSH Hardening (Server Deployments)

Default SSH configuration is functional but not hardened. Edit /etc/ssh/sshd_config to apply these baseline hardening measures:

sudo nano /etc/ssh/sshd_config

Key directives to set:

PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Port 2222
MaxAuthTries 3

Disable password authentication only after you have confirmed that key-based authentication works. Locking yourself out of a remote server by prematurely disabling passwords is a common and costly mistake.

Restart SSH after changes:

sudo systemctl restart sshd

Manage a Domain and DNS

If you are hosting a website or application on your Ubuntu server, you will need a domain pointed at your server's IP address. Domain Registration and DNS management are prerequisites before configuring virtual hosts in Apache or NGINX. Ensure your A record propagates before running Certbot, as certificate issuance depends on DNS resolution.

Ubuntu Server on a VPS: Architecture Considerations

Deploying Ubuntu Server on a VPS Hosting instance introduces several considerations that bare-metal installations do not:

  • Kernel: Most VPS providers run Ubuntu on a host-provided or paravirtualized kernel (KVM, Xen, or VMware). The linux-virtual kernel package is optimized for these environments and uses fewer resources than linux-generic.
  • Cloud-init: Ubuntu cloud images use cloud-init for first-boot configuration. If you are deploying from a provider-supplied image rather than a fresh ISO, understand that /etc/hostname, SSH keys, and network interfaces are configured by cloud-init on first boot, not by the traditional installer.
  • Swap: Many VPS instances ship without a swap partition to maximize usable disk space. On instances with 1–2 GB RAM, create a swap file:
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
  • Control panels: If you prefer a GUI-based server management interface over raw CLI, consider a VPS with cPanel or explore the full range of VPS Control Panels to find a stack that matches your workflow.

Technical Decision Matrix: Which Ubuntu Variant to Deploy

Use this matrix to select the appropriate Ubuntu variant based on your scenario:

ScenarioRecommended VariantMinimum RAMStorageNotes
Daily driver workstationUbuntu Desktop LTS8 GB50 GB SSDFull GNOME, LTS for stability
Developer machine (Docker, VMs)Ubuntu Desktop LTS16 GB100 GB NVMebtrfs root for snapshots
Web / application serverUbuntu Server LTS2 GB20 GBHeadless, minimal attack surface
Low-resource VPS (512 MB–1 GB RAM)Ubuntu Server LTS512 MB10 GBDisable swap partition; use swap file
Embedded / IoT deviceUbuntu Core or Server Minimal512 MB4 GBSnap-based or debootstrap
Custom base for containerizationUbuntu Minimal1 GB10 GBStrip further with `–no-install-recommends`
GPU compute / ML workloadsUbuntu Desktop or Server LTS16 GB+100 GB+Pair with NVIDIA driver stack

Key Technical Takeaways

  • The x86-64 (AMD64) architecture is mandatory for all modern Ubuntu releases; 32-bit support ended with Ubuntu 18.04.
  • Ubuntu Server's subiquity installer requires 1 GB RAM to run reliably despite the OS itself supporting 512 MB post-install.
  • Always separate /var from / on production servers to prevent log overflow from crashing the root filesystem.
  • Disable PasswordAuthentication in SSH only after confirming key-based login works β€” remote lockout on a VPS requires console access to recover.
  • Run sha256sum on every downloaded ISO before writing to USB; a corrupted image produces cryptic installer failures that waste hours.
  • For VPS deployments, create a swap file rather than a swap partition to retain partition layout flexibility.
  • unattended-upgrades should be enabled on every Ubuntu Server instance; unpatched servers are the primary vector for automated exploitation.
  • LTS releases are the only appropriate choice for production infrastructure; non-LTS releases are suitable for hardware compatibility testing or short-lived development environments.

Frequently Asked Questions

Can Ubuntu Desktop run on 2 GB of RAM?

Technically yes, but the experience is poor. GNOME Shell and its compositor consume 400–600 MB at idle, leaving less than 1.5 GB for applications. On 2 GB hardware, use Ubuntu Server, Lubuntu (LXQt desktop), or Xubuntu (Xfce desktop) instead β€” both are official Ubuntu flavors with dramatically lower memory footprints.

What is the difference between Ubuntu LTS and standard releases in terms of hardware support?

LTS releases prioritize stability and receive backported security patches for five years. Standard releases ship with newer kernels (often 6+ months ahead of the LTS kernel) that include drivers for recently released hardware. If your machine has a GPU, Wi-Fi card, or NVMe controller released within the past year, a non-LTS release may provide better out-of-the-box support until the next LTS kernel HWE stack catches up.

Does Ubuntu Server require a graphical interface to manage?

No. Ubuntu Server is designed for SSH-based remote administration and CLI-based configuration. If you require a web-based GUI, tools like Webmin, Cockpit, or a commercial control panel can be installed post-deployment. Cockpit is available directly from Ubuntu's repositories:

sudo apt install cockpit -y

How do I verify my Ubuntu ISO download is authentic?

Download the SHA256SUMS and SHA256SUMS.gpg files from the same Ubuntu releases page as the ISO. Verify the GPG signature against Ubuntu's signing key, then compare the SHA256 hash of your downloaded ISO against the value in SHA256SUMS. A matching hash confirms both integrity and authenticity.

What happens if I install Ubuntu on hardware below the minimum requirements?

Ubuntu Desktop will either refuse to install (the installer checks RAM at startup) or produce an unstable system prone to OOM kills and swap exhaustion. Ubuntu Server is more tolerant of constrained hardware, but package management operations (apt upgrade) may fail or hang on systems with less than 512 MB RAM. For hardware below these thresholds, consider Alpine Linux or Debian with a minimal install profile.

15%

Save 15% on All Hosting Services

Test your skills and get Discount on any hosting plan

Use code:

Skills
Get Started