#

Distributions

Subscribe
Distributions October 29, 2026·9 min read

Ubuntu 24.04 vs 26.04 LTS for Servers: Which Should You Use?

Install Ubuntu 26.04 LTS on a new server if your software and management tools support it. Keep a healthy Ubuntu 24.04 LTS production server on 24.04 until a specific operational need justifies a move, and if a dependency is unsupported or your recovery path is unproven, resolve the blocker first. List your critical services and run the compatibility preflight before scheduling an upgrade.

An established server carries years of configuration changes, data and dependencies.

Ubuntu 26.04 extends the support window and updates major components.

Ubuntu 24.04 or 26.04: which server release should you choose?

Ubuntu server choices

On a new deployment, the newer LTS gives you a longer maintenance window. On a working production host, the benefit has to outweigh the compatibility work and service interruption the upgrade brings. Record the exact Ubuntu point release and the versions of the applications you depend on.

Your situationWhat to doCondition
New VPS or dedicated serverInstall Ubuntu 26.04 LTSApplications, hosting tools, and hardware support the release
Healthy Ubuntu 24.04 production hostKeep Ubuntu 24.04 LTSExisting software meets your needs and the support window is long enough
24.04 host needs a newer runtime or featureTest an in-place upgradeCritical dependencies pass testing and restoration is proven
Stateful or extensively customized hostConsider a replacement serverYou can run parallel infrastructure, migrate the data and control the cutover

Support dates and upgrade availability

Ubuntu support timelines

Ubuntu 26.04 extends standard security maintenance by two years.

ReleaseMaintenance tierPublished end
Ubuntu 24.04 LTSStandard security maintenanceMay 2029
Ubuntu 24.04 LTSUbuntu Pro ESMMay 2034
Ubuntu 26.04 LTSStandard security maintenanceMay 2031
Ubuntu 26.04 LTSUbuntu Pro ESMMay 2036

Ubuntu Pro Expanded Security Maintenance is a separate support tier with its own coverage. Canonical publishes the windows in its Ubuntu release cycle. If the server will stay deployed for several years, plan around the standard-maintenance end date. A host you will replace within 24.04's supported lifetime faces less lifecycle pressure than one that will outlive it.

On September 29, 2026, the Ubuntu Release Team announced that supported upgrades from Ubuntu 24.04 LTS to Ubuntu 26.04.1 LTS were enabled, including for Ubuntu Server. The documented upgrader is do-release-upgrade.

Ubuntu upgrade availability

The announcement raises two separate questions: does the distribution offer a supported upgrade path, and are your application's dependencies ready for it?

What changes between Ubuntu 24.04 and 26.04 for servers?

Ubuntu component versions
ComponentUbuntu 24.04 baselineUbuntu 26.04 baselineServer consequence
GA kernelLinux 6.8Linux 7.0Hardware, drivers, and kernel modules
systemd255259Service configuration and cgroup behavior
Python3.123.14Application and virtual-environment support
PHP8.38.5Frameworks, extensions, and site code
MySQL8.08.4 LTSAuthentication and database upgrade planning
PostgreSQL1618Major-version data migration
OpenSSH9.6p110.2p1Older authentication and configuration
APT2.x3.xRepository management and scripts

These are release baselines, and installed versions can differ after security updates, vendor repositories or a kernel change. Ubuntu 24.04's hardware-enablement (HWE) path can also provide Linux 7.0.

/tmp is memory-backed

Ubuntu 26.04 uses a memory-backed tmpfs filesystem for /tmp by default. A program that treats it as plentiful disk-backed scratch space runs into a memory limit instead, especially when it creates large temporary files on a server short on memory.

An operator testing a company upgrade with temporary product-catalog files wrote on r/Ubuntu: “When testing the upgrade to 26.04, I kept having weird OOM killed processes, scripts were dying in strange spots.”

Temporary storage behavior

Administrative and startup defaults differ

  • sudo-rs and Rust-based core utilities replace many commands. GNU alternatives are available, and cp, mv and rm stay GNU-based. Test scripts that depend on exact command behavior.
  • APT moves to version 3. Check scripts that call apt-key.
  • OpenSSH 10.2p1 removes DSA support, so configurations that still rely on that obsolete key type are affected.
  • Dracut becomes the default initramfs infrastructure, and initramfs-tools stays available as an alternative. Custom boot hooks and specialized recovery setups are affected.

New Ubuntu 26.04 installations use Chrony for time synchronization by default. A host upgraded from an earlier release can keep systemd-timesyncd, so two 26.04 machines can differ here.

Compatibility blockers: when to defer an upgrade

Server compatibility blockers

An upgrade becomes a problem when a required application depends on functionality that 26.04 removes or alters. Classify each dependency you know about before calling an ordinary software change a production blocker.

ConditionClassificationReason
Required cgroup v1 hierarchyBLOCKsystemd 259 on Ubuntu 26.04 no longer supports cgroup v1
Accounts using mysql_native_passwordTEST / possible blockerMySQL 8.4 disables this authentication method by default
Legacy DSA SSH dependencyTESTOpenSSH 10.2p1 removes DSA support
Custom boot integrationTESTThe default initramfs infrastructure changes
Old repository or privilege scriptsTESTAPT, sudo, and utility defaults differ
Component absent from the deploymentNOT APPLICABLENo dependency on that component has been identified

If a required workload relies on cgroup v1, choose STAY until it moves to a supported configuration. A container host already on cgroup v2 doesn't hit this restriction.

The Apache2 systemd unit in Ubuntu 26.04 enables MemoryDenyWriteExecute=yes. With libapache2-mod-php, that can block PCRE JIT memory allocation. Canonical recommends PHP-FPM, which this hardening doesn't affect.

Legacy dependency assessment

Which release fits your actual server workload?

Ubuntu workload selection
  • New uncomplicated VPS: Ubuntu 26.04 fits when the provider's image, hosting panel, software and hardware are compatible. On a small-memory instance, the /tmp default matters if your workload leans on temporary files.
  • Docker or container host: Check the runtime's supported Ubuntu release and your workload's cgroup requirements. The Docker Engine installation documentation lists platform requirements, and your images and custom integrations bring their own dependencies.
  • WordPress or PHP server: The distro PHP baseline is 8.3 on 24.04 and 8.5 on 26.04. WordPress core compatibility guidance can't confirm that every installed plugin, theme, PHP extension or hosting panel supports that environment. A site pinned to an unready extension can need application work before an OS move.
  • MySQL or PostgreSQL host: Database major versions change, which affects authentication, clients and data migration. The 26.04 release notes also warn that a Linux 7.0 change can significantly affect PostgreSQL throughput and latency on systems without huge pages. Systems using huge pages are unaffected. On PostgreSQL with Linux 7.0, check that huge pages are available and PostgreSQL's huge_pages setting is on, then test representative queries before upgrading.
  • Customized server or fleet: Legacy SSH configuration, management scripts, specialized boot hooks and third-party packages add upgrade work. Reproducible configuration and a maintenance policy can favor keeping 24.04 while you test changes.
Database server compatibility

The OS can install without errors while an application dependency stays unresolved.

In-place upgrade or replacement server: which fits your setup?

Server migration strategies

An in-place upgrade suits a manageable 24.04 host when its dependencies are validated, downtime is acceptable and restoration is proven.

A replacement host fits when you can provision parallel infrastructure and test applications before cutover. Syncing data, secrets and network routing adds work. Stateful services with strict outage limits gain more from a controlled parallel cutover, if you have that infrastructure and can reverse the cutover.

A go/no-go preflight for Ubuntu 24.04 to 26.04

Ubuntu upgrade preflight

Before changing the release on a production host, gather the evidence that shows which dependencies are blocked and whether you can recover. These checks are read-only, and the last one only asks whether an upgrade is offered.

cat /etc/os-release
uname -r
stat -fc %T /sys/fs/cgroup
findmnt --target /tmp
apt-mark showhold
grep '^Prompt=' /etc/update-manager/release-upgrades
sudo do-release-upgrade -c
  • cat /etc/os-release shows the installed Ubuntu release.
  • uname -r shows the running kernel, including any HWE difference from the release's GA baseline.
  • stat -fc %T /sys/fs/cgroup prints the filesystem type. cgroup2fs means the unified cgroup v2 filesystem. A legacy hierarchy means you should check which services depend on it before upgrading.
  • findmnt --target /tmp shows which filesystem holds that path, whether /tmp is a separate mount or sits on another filesystem. A tmpfs result means memory-backed temporary storage. A disk-backed result needs enough free space. Test large scratch-file workloads before GO.
  • apt-mark showhold lists held packages. Investigate holds along with PPAs and vendor packages, and treat unresolved upgrade conflicts as REMEDIATE.
  • grep '^Prompt=' /etc/update-manager/release-upgrades shows the selected upgrade channel.
  • sudo do-release-upgrade -c checks whether a release upgrade is available. If none is offered, defer the upgrade and inspect the configured channel. Running do-release-upgrade without -c starts the upgrade, so use it only as part of an approved change.
Linux recovery readiness

Prove that the service can be restored

A recent backup helps only if it contains your application data and system configuration and you can actually restore from it. Restore the necessary components in an isolated environment before relying on the backup as your production recovery route.

An Ubuntu 24.04 user asked in an r/Ubuntu upgrade discussion: “I’m currently on Ubuntu 24.04 LTS, and i’ve received update for Ubuntu 26.04. can i upgrade safely without losing any data?”

  • Storage and packages: Check free disk space and sort out third-party packages that need special handling.
  • Critical applications: Make sure database clients, PHP extensions, containers, authentication and custom service units have a working target configuration.
  • Access: Keep a verified SSH route and emergency access to the host.
  • Change window: Choose a window where the upgrade, and a recovery if needed, has an acceptable effect on users.

Once you are ready, follow the Ubuntu Server upgrade documentation for the supported procedure.

GO / REMEDIATE / STAY: GO means the essential dependencies, the restoration test and the change window meet your service requirements. REMEDIATE means you have identified a fix but haven't tested it. STAY means a required dependency is still incompatible or you have no recovery route.

After upgrading: verify that the server still works

Server acceptance testing

A completed upgrade doesn't mean the server works. Run these two commands first:

cat /etc/os-release
systemctl --failed

The first confirms the installed release. The second lists failed systemd units. Neither catches an application failure: an HTTP response can coexist with a broken WordPress login or database query. Check the services themselves.

  • Web application: Check expected HTTP behavior and run one real authenticated operation or transaction where it applies.
  • Database: Verify connectivity, then run a typical operation with the right read or write permissions.
  • Network services: Confirm the intended process owns each critical listener. On a resolver, that includes DNS port 53, where the wrong daemon can end up listening even though the host boots.
  • Containers: Check the required workloads and their application endpoints.
  • Scheduled work: Verify a few cron jobs, queues or application schedulers.
  • Operations: Check remote access, logging, monitoring, and alerts.
  • Application data: Compare essential state and backup functionality with the pre-change baseline.
Application health checks

In an early-release r/Ubuntu thread covering several differently configured machines, one user wrote: “I'm up to 8/10 machines completed and it's been very minor issues.”

Accept or recover: Accept the change when the critical service tests pass. If a required test fails and the repair would take longer than the agreed recovery window, use the restoration or rollback route you tested earlier.

NoScript Team