Back to Article List

Ubuntu 26.04 LTS VPS setup and what's new

Ubuntu 26.04 LTS VPS setup and what's new - Ubuntu 26.04 LTS VPS setup and what's new

Ubuntu 26.04 LTS landed on April 23, 2026 under the codename Resolute Raccoon. If you're spinning up a fresh VPS this month, this is the release I'd start with for any new work. Five years of standard support takes you to April 2031, or up to ten years if you bolt on an Ubuntu Pro subscription. It's the eleventh long-term support release from Canonical and the first to ship Linux 7.0 in a stable LTS form.

I run new servers on the freshest LTS unless I have a hard reason not to. This release shifts a handful of things under the hood (the kernel, the sudo binary, the default initramfs, the time daemon) but most server flows transfer cleanly from 24.04. The bigger shift to watch is container-related: systemd 259 has fully removed cgroup v1, so anything running Docker pre-20.10 won't even let you upgrade.

The rest of this guide walks through what's new, how to get 26.04 deployed on a VPS in under a minute, the post-deploy steps I run on every fresh server and the changes from 24.04 that catch people out. I've trimmed the "everything" version down to what matters when you're running this as a server, not a desktop.

What's new in Ubuntu 26.04 LTS

The big-picture story is consolidation rather than reinvention. Canonical pulled changes from 24.10, 25.04 and 25.10 into a stable LTS base, then layered on the new bits.

Per the official Ubuntu 26.04 LTS release notes, the headline server changes are:

  • Linux 7.0 as the generic kernel
  • systemd 259 (and the cgroup v1 hierarchy is gone)
  • Python 3.14 as the system Python
  • OpenSSH 10.2 with post-quantum hybrid key exchange enabled by default
  • sudo-rs (a Rust rewrite of sudo) as the default sudo provider
  • Rust coreutils replacing GNU coreutils, with GNU still installable
  • Dracut as the default initramfs builder instead of initramfs-tools
  • APT 3.1 with a smarter dependency solver
  • Chrony as the default time daemon for fresh installs
  • PostgreSQL 18, MySQL 8.4 LTS, MariaDB 12 in main, plus PHP 8.5

Canonical's Resolute Raccoon launch post has the marketing-shaped take if you want the silicon and AI/ML angle. For server work, the kernel and systemd updates are doing most of the operational heavy lifting.

Ubuntu 26.04 LTS kernel version and toolchain

The Ubuntu 26.04 LTS kernel version is Linux 7.0. (Yes, the version number is wild for a kernel that was 6.x for years. Upstream renumbered, that's all.) On a fresh install you'll see something like 7.0.0-13-generic, with point updates rolling in via the standard archive.

What that buys you on a server:

  • io_uring improvements for high-throughput I/O patterns
  • Memory management changes that show up under sustained load
  • Hardware enablement for Intel Panther Lake, AMD Zen 6, newer NICs and NPUs
  • An extensible scheduler (sched_ext) that lets developers ship custom schedulers as eBPF programs
  • Crash dumps enabled by default on both server and desktop installs

You can confirm what your VPS is running with one command:

uname -r

For the toolchain, you get Python 3.14, GCC 15.2, OpenJDK 25, Go 1.26, LLVM 21, Rust 1.93 and glibc 2.43 in the default install. Anything still pinned to Python 3.11 or earlier needs a compatibility check before you flip an existing project over.

Deploying Ubuntu 26.04 LTS on a LumaDock VPS

Two paths here. One takes under a minute and uses the 1-click template, the other gives you the full installer if you want to tune partitioning or set up encrypted disks.

The 1-click template path

This is the route I'd take 95% of the time. Pick Ubuntu 26.04 LTS from the operating-system selector at checkout, place your order and the server boots straight into a clean cloud image with sudo-rs, OpenSSH 10.2, Python 3.14 and the rest of the 26.04 defaults already in place. SSH keys you've added to your account get baked in automatically, so you can connect over SSH the moment deployment finishes.

The template is available on every plan tier across all of our Linux VPS plans (AMD EPYC, NVMe SSD, unmetered bandwidth, full root, 30-day refund). If you already have a server on an older release, the same template shows up under the reinstall flow in your control panel. A reinstall wipes the disk completely, so snapshot first.

The manual ISO install path

If you want to install from the official ISO (custom partitioning, RAID configs, TPM disk encryption, custom kernel options), the LumaDock panel supports mounting ISOs and booting into them over VNC. Grab the ISO from the official Ubuntu Server download page, mount it from your control panel and boot the VM into the installer. Step through Subiquity normally.

This route makes sense for production setups with specific disk layout requirements. For development boxes, staging servers and most production web setups, the 1-click template is faster and gets you to the same place.

First-hour setup after deployment

The cloud image is intentionally bare. A fresh install needs a few standard moves before you put real data on it.

Update everything

A freshly released LTS pulls a lot of late-stage fixes in the first few weeks. Use full-upgrade rather than plain upgrade:

sudo apt update
sudo apt full-upgrade -y

On 26.04 specifically, the base package set is still settling. full-upgrade follows Depends/Conflicts changes that plain upgrade refuses to touch. On my last fresh deploy, 124 packages had updates waiting on day one.

Reboot if /var/run/reboot-required shows up after the upgrade.

Create an admin user

The cloud image ships with an ubuntu user that has sudo. If you're starting from a bare image with just root, add a normal user:

adduser alex
usermod -aG sudo alex

Copy your SSH key over to the new user, test login in a second terminal before you do anything else, then disable root SSH login. The order matters. Lock yourself out before testing the new user and you'll be writing the next support ticket from a coffee shop.

Harden SSH

OpenSSH 10.2 on 26.04 is sensible by default for new installs. Password auth is off on cloud images, key-only access, post-quantum hybrid key exchange (mlkem768x25519-sha256) on by default. Still worth dropping a hardening file:

sudo nano /etc/ssh/sshd_config.d/99-hardening.conf
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
KbdInteractiveAuthentication no
X11Forwarding no

Validate the config then reload:

sudo sshd -t
sudo systemctl restart ssh

Heads up if you're connecting from old kit: OpenSSH older than 9.5 can't negotiate the new post-quantum KEX. You'll either upgrade the client or add the classical algorithms back into sshd_config.

Turn on the firewall

UFW is enough for most VPS setups. Allow SSH first or you'll lock yourself out:

sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status verbose

Enable unattended security updates

Already enabled on fresh 26.04 cloud images. Verify:

cat /etc/apt/apt.conf.d/20auto-upgrades

Both values should be "1". If they aren't, install unattended-upgrades and reconfigure:

sudo apt install unattended-upgrades apt-listchanges -y
sudo dpkg-reconfigure unattended-upgrades

Set the timezone

The default is UTC, which I'd keep for servers. If you want local time for logs:

sudo timedatectl set-timezone Europe/Bucharest
timedatectl status

That's the bare minimum. From here you'd install your stack: Nginx, your app runtime, your database, your auth layer, whatever the project needs. The n8n on Ubuntu walkthrough translates one-to-one to 26.04 if you're going the Docker plus Caddy route. Same for Coolify since the install script is already 26.04-aware.

Breaking changes from Ubuntu 24.04

Most things move across cleanly. The ones that don't:

cgroup v1 is fully gone

systemd 259 removed the legacy cgroup hierarchy entirely. There's no fallback flag. The official changes-since-previous-interim doc is blunt about it: installations running cgroup v1 won't be allowed to upgrade.

In practice this hits two groups. First, anyone still on Docker older than 20.10. Modern Docker (any release from 2020 onwards) auto-detects cgroup v2 and switches the driver, so 99% of people are fine. Second, container images or scripts that read /sys/fs/cgroup/memory or /sys/fs/cgroup/cpu directly will need to switch to the unified hierarchy under /sys/fs/cgroup/. Custom monitoring tools, old kubelet versions and weird LXC configurations are where this shows up.

Check which version you're on:

stat -fc %T /sys/fs/cgroup/

You want cgroup2fs back. If it says tmpfs you're still on v1 and need to migrate before upgrading.

OpenSSH dropped DSA

Host DSA keys are no longer generated. The DSA signature algorithm is removed entirely. Old keys still sitting on your laptop from a 2012 server? Generate Ed25519 instead. It's faster and the math is harder to break.

Python 3.14 replaces 3.12

Virtualenvs created on 3.12 won't activate cleanly. Rebuild them:

python3 -m venv --clear /path/to/venv

Anything pinned to Python 3.11 or earlier needs a compatibility check. The 3.14 release includes optional GIL ("no-GIL") mode, interpreter performance gains and a batch of deprecations that have been telegraphed for years and still bite legacy code if you haven't kept up.

/tmp is a tmpfs now

The /tmp directory is mounted as RAM-backed tmpfs by default. Contents disappear on reboot and the size is capped by available memory. If you have a process that writes large temp files (build artifacts, video transcodes, big SQL dumps), point it at /var/tmp or somewhere disk-backed.

sudo-rs as the new default

The classic sudo is replaced by sudo-rs, a Rust reimplementation. Day-to-day behaviour is the same. Exotic configurations show differences in places: complex sudoers files with plugin-based setups, old sudo-ldap installs. The classic sudo is still available as the sudo.ws package if you hit an edge case. The sudo-ldap package was removed entirely, switch to LDAP via PAM.

System V init scripts

26.04 is the last release that supports System V service script compatibility in systemd. If you've got any /etc/init.d/ scripts still kicking around, convert them to systemd units now rather than at the next LTS upgrade.

Ubuntu 26.04 LTS or 24.04 LTS, which one?

For a new deployment in mid-2026, I'd lean towards 26.04 in most cases. Five quiet years of standard support, a newer kernel, a newer toolchain and the upgrade pain done already. The first point release (26.04.1) is scheduled for August 2026 with the usual loose-end cleanup, but the .0 release is stable enough for production work today.

24.04 LTS still makes sense in a few scenarios. If your stack relies on third-party PPAs (Ondrej PHP, MariaDB upstream), they often lag the LTS by a few weeks on Resolute Raccoon packages and you'll spend time being the first to find any breakage. If your application is pinned to Python 3.11 or earlier with no clean path forward, staying on 24.04 buys you breathing room until April 2029. If a server is in production-freeze and only takes critical patches, there's no rush.

Don't pick 22.04 for new work, by the way. Standard support runs out in April 2027 and you'd be planning an LTS-to-LTS upgrade within the year. Skip straight to 24.04 or 26.04 instead.

Both Ubuntu LTS releases run on the same VPS plans and switching between them is a reinstall away. The hardware doesn't care.

Upgrading an existing 24.04 server to 26.04

For a production server, I'd wait for 26.04.1 (August 2026) and run the upgrade on a clone first. Take a snapshot, clone the VPS, run do-release-upgrade on the clone, validate your application stack and then schedule a maintenance window on the real server. The upgrade itself runs in 15 to 20 minutes on a decent connection.

For dev and staging servers, run the upgrade now. The kernel and systemd changes are real, and you want to find any breakage in dev before it bites you in prod. The upgrader is gated until your container runtime supports cgroup v2 anyway, so the worst case is the script tells you to fix Docker first.

The actual upgrade command sequence is the standard Ubuntu route:

sudo apt update
sudo apt full-upgrade -y
sudo do-release-upgrade -d

The -d flag accepts the latest release including the .0. Once 26.04.1 ships, it'll be the default without the flag.

If you'd rather skip the in-place upgrade entirely (and honestly, on a long-running server with years of cruft, a clean reinstall is often the cleaner choice), the LumaDock reinstall flow boots the new image in under a minute. Snapshot first, deploy fresh, copy data across. You get a 26.04 server without inheriting whatever odd state your previous OS picked up over the years.

Common applications on Ubuntu 26.04

The application stack moved up alongside the OS. Quick reference for the ones I see most often on a fresh VPS:

  • Docker: install from the official Docker apt repo, no special steps. Compose v2 is the default. Works identically to the 24.04 install if you've done that before.
  • Nginx: 1.26 in main, same config file structure. UFW rules from your 24.04 setup will copy across.
  • PostgreSQL 18: ships in main with the new I/O subsystem. Major version jump from 16 in 24.04, so check your extensions before dropping a production database on it.
  • MySQL 8.4 LTS: configuration changes from 8.0, worth reviewing the MySQL 8.4 upgrade overview before migration.
  • PHP 8.5: default in main. The Ondrej PHP PPA usually takes a few weeks to publish 26.04 builds, plan around that if you need 8.1 or 8.2 specifically.
  • n8n, Hermes Agent, OpenClaw, WireGuard: all of our app-specific 1-click templates currently default to Ubuntu 24.04 for stability reasons. They'll get rolled onto 26.04 once the .1 release lands and the underlying installers catch up.

If you want a Docker plus Caddy setup as the base layer for hosting apps yourself, our Hermes Agent install walkthrough works on 22.04, 24.04 and 26.04 with no changes (the installer auto-detects the distro). That's a good signal for how cleanly most well-maintained installers handle the 26.04 transition.

My final thoughts

Most of the 26.04 changes are quiet wins. The kernel is faster on real workloads, OpenSSH is genuinely future-proofed against quantum attacks (good for the next decade of compliance audits), the toolchain is current and the systemd cleanup gets rid of years of legacy that nobody was using anyway. The two sharp edges (cgroup v1 removal and the Python jump) hit a specific minority and the fixes are well-trodden.

Spin one up, run the post-install checklist above, build whatever you came to build. If something breaks, the LumaDock support team handles tickets directly and the 26.04 image has been live across our fleet for a few weeks already, so we've seen the same edge cases you're likely to hit.

FAQ

When did Ubuntu 26.04 LTS come out, and how long will I get support?

26.04 LTS was released on April 23, 2026 under the codename Resolute Raccoon. You get five years of standard support (until April 2031) and the option of ten years of Expanded Security Maintenance through an Ubuntu Pro subscription, which takes you out to April 2036.

Your ideas deserve better hosting

Bring your winning ideas online faster, with modern hardware and unmetered bandwidth. Join a European cloud trusted by thousands of developers and businesses worldwide.

GPU products are in high demand at the moment. Fill the form to get notified as soon as your preferred GPU server is back in stock.