How to Install Ubuntu Server 26.04 LTS — Complete Production Guide

How to Install Ubuntu Server 26.04 LTS — Complete Production Guide

Ubuntu Server
26.04 LTS
Resolute Raccoon
Kernel 7.0
Published June 2026 · 18 min read

Everything you need to deploy Ubuntu 26.04 “Resolute Raccoon” on bare metal, a VM, or a cloud instance — from choosing the right hardware configuration to a hardened, production-ready server in under an hour.

10 yrsSecurity support (Ubuntu Pro)
Linux 7.0Kernel version
1.5 GBMinimum server RAM
Apr 23, 2026GA release date

01 Release Overview & What’s New in 26.04

Ubuntu 26.04 LTS, codenamed Resolute Raccoon, landed on April 23, 2026. It is an LTS (Long-Term Support) release — Canonical commits to five years of standard security updates (through 2031) and an additional five years via Ubuntu Pro, bringing total coverage to a full decade.

For server administrators, this release is significant. It ships the Linux 7.0 kernel, removes cgroup v1 entirely (cgroup v2 is now mandatory), replaces the traditional sudo binary with the memory-safe Rust rewrite sudo-rs, and introduces native first-class support for NVIDIA CUDA and AMD ROCm — making it an excellent AI/ML workload platform out of the box.

⚙️

Linux Kernel 7.0

Better CPU/GPU driver coverage, improved power management, mandatory cgroup v2, media mounts under /run/media.

🦀

sudo-rs (Rust sudo)

The classic sudo is replaced by a memory-safe Rust implementation. Legacy sudo.ws still installable.

🔐

TPM Full-Disk Encryption

TPM-backed FDE out of the box. Works seamlessly with hardware security chips on modern servers.

🤖

Native AI/ML Toolkits

NVIDIA CUDA and AMD ROCm are natively supported. Ideal for GPU inference and training servers.

🛡️

Livepatch on ARM64

Live kernel patching now supports ARM64 servers — zero-downtime security patches for Ampere, Graviton, etc.

🗄️

New Database Versions

PostgreSQL 18, MariaDB 11.8, MySQL 8.4, Valkey 9, and DocumentDB are LTS-supported out of the box.

🌐

Netplan 1.2

Improved wait-online behavior, routing policy support, better OVS/SR-IOV integration for advanced networking.

📦

Updated Toolchain

glibc 2.42, LLVM 21, Rust 1.93, OpenJDK 25, PHP 8.5, Nginx 1.28, Apache 2.4.65, Docker 29, QEMU 10.2.

If you are running a production system today, consider waiting for the 26.04.1 point release (August 7, 2026) before upgrading mission-critical workloads. Ubuntu 24.04 LTS remains fully supported until 2029.

02 Which Ubuntu Server Version for Which Configuration?

Not every server should run the newest LTS. The table below maps server use cases and hardware profiles to the recommended Ubuntu release, so you can make an informed decision before you begin.

Server Role / Use Case CPU / RAM Profile Storage Recommended Notes
New general-purpose production server
Web, API, app server
4+ cores · 8+ GB RAM 40 GB+ SSD 26.04 LTS 10-year security horizon; best for long-running infrastructure
AI / ML inference or training
CUDA / ROCm GPU workloads
8+ cores · 32+ GB RAM · NVIDIA/AMD GPU 200 GB+ NVMe 26.04 LTS Native CUDA & ROCm support; Kernel 7.0 GPU driver improvements
Kubernetes / container host
K3s, kubeadm, Docker Swarm
4–16 cores · 16–64 GB RAM 100 GB+ fast SSD 26.04 LTS cgroup v2 only — verify workloads are v2-compatible before migrating
Database server
PostgreSQL, MariaDB, MySQL
4+ cores · 16–128 GB RAM 500 GB+ NVMe RAID 26.04 LTS PostgreSQL 18, MariaDB 11.8 are LTS-supported; excellent IO scheduler improvements
Edge / IoT / ARM server
Raspberry Pi 5, Ampere, Graviton
ARM64 · 4–16 GB RAM 32 GB+ eMMC / SSD 26.04 LTS ARM64 Livepatch support; RVA23 RISC-V profile; strong ARM64 optimizations
Stable production system on 24.04
No urgent need to upgrade
Any Any 24.04 LTS Supported until 2029; upgrade after 26.04.1 in Aug 2026 for smoother migration
Legacy server (low RAM, old hardware)
Rescue, embedded, minimal VPS
1–2 cores · 1.5–3 GB RAM 10–20 GB 24.04 LTS 26.04 works at 1.5 GB server minimum, but 24.04 has lower overhead on constrained hardware
Development / staging / CI
Latest tools needed
2–8 cores · 4–16 GB RAM 40+ GB 26.04 LTS LLVM 21, OpenJDK 25, PHP 8.5, Rust 1.93 — ideal for cutting-edge dev environments
High-frequency trading / latency-critical High-clock cores · 64+ GB RAM Fast NVMe 22.04 LTS Validate scheduler changes in Kernel 7.0 before migrating
IBM Z (mainframe) deployment IBM z15 (LinuxONE III) or newer only Varies 26.04 LTS z14 and older are NOT supported by 26.04; requires z15 minimum
End-of-life server on 20.04 or older Any Any Migrate ASAP 20.04 standard support ended April 2025; plan migration to 24.04/26.04

cgroup v1 removal: Ubuntu 26.04 with Kernel 7.0 drops cgroup v1 entirely. If your containers, Java runtimes (pre-JDK 11), or monitoring agents rely on cgroup v1, they will break. Test on a staging server before migrating production.

03 Prerequisites & Hardware Requirements

Official Minimum Requirements (Server Edition)

Component Absolute Minimum Recommended (light) Recommended (production)
CPU 1 GHz single-core (x86-64 or ARM64) 2 GHz dual-core 4+ cores, 3+ GHz
RAM 1.5 GB 4 GB 16–64 GB+
Disk (OS) 4 GB 20 GB 40–100 GB SSD
Network Not required for install 100 Mbps NIC 1 Gbps+ NIC
Architecture x86-64 (AMD64), ARM64, ppc64le (POWER8+), s390x (IBM z15+), RISC-V (RVA23/QEMU)

What You’ll Need Before Starting

  • Ubuntu Server 26.04 LTS ISO (ubuntu-26.04-live-server-amd64.iso)
  • A USB drive (8 GB or larger) or BMC/iDRAC/iLO virtual media access
  • The server’s IP / gateway / DNS info if you’ll use static addressing
  • SSH public key (optional but highly recommended — set it up during install)
  • If using LVM/ZFS encryption: note your TPM state or prepare a passphrase

04 Download & Verify the ISO

Download from the official Canonical server

# AMD64 (most common)
wget https://releases.ubuntu.com/26.04/ubuntu-26.04-live-server-amd64.iso

# ARM64 (Raspberry Pi 5, Ampere, AWS Graviton, etc.)
wget https://releases.ubuntu.com/26.04/ubuntu-26.04-live-server-arm64.iso

Verify the download integrity (critical for production servers)

# Download the SHA256 checksum file
wget https://releases.ubuntu.com/26.04/SHA256SUMS
wget https://releases.ubuntu.com/26.04/SHA256SUMS.gpg

# Import Canonical's signing key
gpg --keyid-format long --keyserver hkps://keyserver.ubuntu.com \
    --recv-keys 0x843938DF228D22F7B3742BC0D94AA3F0EFE21092

# Verify the SHA256SUMS file signature
gpg --verify SHA256SUMS.gpg SHA256SUMS

# Verify the ISO checksum
sha256sum -c SHA256SUMS 2>&1 | grep ubuntu-26.04-live-server-amd64.iso
# Expected: ubuntu-26.04-live-server-amd64.iso: OK

Flash to USB (Linux/macOS)

# Find your USB device first
lsblk

# Flash — replace /dev/sdX with your USB device (e.g., /dev/sdb)
sudo dd if=ubuntu-26.04-live-server-amd64.iso of=/dev/sdX bs=4M status=progress oflag=sync

Double-check the of= target before running dd. Writing to the wrong device will destroy data on that disk. Use lsblk to confirm the device letter.

05 Step-by-Step Server Installation

The Ubuntu Server installer is a curses-based TUI called Subiquity. It is keyboard-driven, straightforward, and supports both interactive and autoinstall modes for unattended deployments.

Step 1 — Boot from installation media

Set your server’s boot order to boot from USB/virtual media first. Modern UEFI systems: hit F11, F12, or Del at POST to enter the boot menu. Select the Ubuntu installer media. When the GRUB menu appears, press Enter to select Install Ubuntu Server.

Step 2 — Language and keyboard

Use arrow keys to select your preferred language and keyboard layout. For most server deployments, English and the default detected layout are fine. Press Done.

Step 3 — Choose installation type

  • Ubuntu Server — full server with cloud-init and common utilities (recommended)
  • Ubuntu Server (minimized) — stripped-down image for containers and cloud instances

Step 4 — Network configuration

Subiquity will auto-detect your NICs and attempt DHCP. For production servers, configure a static IP:

1

Select the NIC

Navigate to your primary NIC (e.g., ens3 or eth0) and press Enter.

2

Set IPv4 method to Manual

Change from “Automatic (DHCP)” to “Manual”. Enter your subnet, address, gateway, and name servers.

3

Save and continue

Press Save then Done. The installer will verify connectivity.

Step 7 — Storage configuration (most important step)

Option When to use Notes
Use an entire disk Single-disk servers, VMs, quick setups Creates one EXT4 root partition; optionally enables LVM
Use entire disk + LVM Production servers, database hosts Flexible resizing; enable TPM FDE here for encrypted LVM
Custom storage layout RAID, ZFS, multi-disk, specific partition requirements Full manual control; recommended for large/critical servers

Recommended partition layout for production servers: /boot/efi (512 MB, FAT32), /boot (2 GB, EXT4), / (40 GB, EXT4), /var (remaining disk or separate volume for log-heavy workloads), swap (equal to RAM up to 16 GB, or 4 GB if RAM > 16 GB).

Step 8 — Profile setup (user account)

# Fill in the installer form fields:
Your name:         admin               # Display name
Server's name:     prod-web-01          # Hostname (lowercase, no spaces)
Username:          ubuntu               # Avoid 'root' — use sudo instead
Password:          ••••••••••••          # Use a strong passphrase

Do not use root as your username. Always create a non-root user with sudo privileges.

Step 10 — SSH setup

Enable OpenSSH server during install. You can import your SSH public key directly from GitHub — the installer fetches it by your GitHub username automatically.

Step 12 — Installation and reboot

The installer copies files and configures GRUB. This typically takes 5–15 minutes. When done, remove the installation media and press Reboot Now.

After reboot you should see the Ubuntu 26.04 login prompt. Connect via SSH: ssh ubuntu@<server-ip>

06 Post-Install Checklist

Update all packages

sudo apt update && sudo apt upgrade -y
sudo apt autoremove -y
sudo reboot   # Reboot to apply any new kernel

Set timezone and NTP

sudo timedatectl set-timezone UTC
timedatectl status
# System clock synchronized: yes

Enable automatic security updates

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

Install essential utilities

sudo apt install -y \
    curl wget git vim htop tmux tree \
    net-tools dnsutils tcpdump \
    build-essential python3-pip \
    jq rsync lsof strace

Verify system info

lsb_release -a
Description: Ubuntu 26.04 LTS

uname -r
7.0.0-1001-generic

07 Security Hardening

Configure UFW firewall

sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp   # SSH — do this BEFORE enabling!
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status verbose

Harden SSH configuration

sudo nano /etc/ssh/sshd_config

PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
MaxAuthTries 3
X11Forwarding no
ClientAliveInterval 300
ClientAliveCountMax 2

sudo systemctl restart sshd

Before setting PasswordAuthentication no, ensure your SSH key works in a separate terminal session first.

Install Fail2ban

sudo apt install fail2ban -y
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

# Add to [sshd] section in jail.local:
enabled  = true
maxretry = 3
bantime  = 3600
findtime = 600

sudo systemctl enable --now fail2ban

08 Installing Popular Server Stacks

LEMP stack (Nginx + MariaDB + PHP 8.5)

sudo apt install nginx -y
sudo apt install mariadb-server -y && sudo mysql_secure_installation
sudo apt install php8.5-fpm php8.5-mysql php8.5-curl php8.5-xml php8.5-mbstring -y

PostgreSQL 18

sudo apt install postgresql postgresql-contrib -y
sudo systemctl enable --now postgresql
PostgreSQL 18.x ...

Docker 29

curl -fsSL https://get.docker.com | sudo sh
sudo usermod -aG docker $USER
docker run hello-world

NVIDIA CUDA (GPU servers)

sudo apt install nvidia-cuda-toolkit -y
nvidia-smi
CUDA Version: 12.x

09 Upgrading from Ubuntu 24.04 LTS

Always take a full snapshot or backup before upgrading. Test on staging first. Wait for 26.04.1 (August 7, 2026) for smoother production upgrades.

# Step 1: Fully update 24.04 first
sudo apt update && sudo apt dist-upgrade -y && sudo reboot

# Step 2: Run upgrade inside tmux (survives SSH disconnects)
tmux new -s upgrade
sudo do-release-upgrade

# Step 3: Reboot and verify
uname -r
7.0.0-1001-generic

Verify after upgrading

  • Check for failed services: sudo systemctl –failed
  • Validate cgroup v2 workloads: systemd-cgls
  • Check media paths: /media → now /run/media
  • AppArmor denials: sudo aa-status

10 FAQ & Troubleshooting

Q: My containers broke after upgrading — “cgroup” errors

Kernel 7.0 removes cgroup v1 entirely. Update to Docker 25+ (26.04 ships 29), JDK 11+, and replace /sys/fs/cgroup/memory/ paths with the unified /sys/fs/cgroup/.

Q: sudo behaves differently / sudo-rs issues

sudo --version   # Should show sudo-rs 0.2.x
# Need legacy sudo?
sudo apt install sudo.ws -y

Q: My server has only 2 GB RAM — will 26.04 work?

Yes. The official minimum for Ubuntu Server 26.04 is 1.5 GB RAM. 2 GB is workable for light workloads. For databases or moderate traffic, aim for at least 4 GB.

Q: How do I attach Ubuntu Pro after installation?

sudo pro attach <YOUR-TOKEN>
sudo pro status
sudo pro enable livepatch   # No-reboot kernel patching

Q: External drives not showing up in /media anymore

Kernel 7.0 changed mount points from /media/username/ to /run/media/username/. Update your scripts, backup cron jobs, and monitoring accordingly.

Q: Can I install 26.04 on IBM Z / mainframe z14?

No. Ubuntu 26.04 requires z15 (LinuxONE III) as the minimum on IBM Z. The z14 and older are not supported — stay on 22.04 or 24.04 LTS on those systems.


© All Right Reserved 2019-2020 futuredesktop.org