OS Checker Beta

Planning for end of life

How to keep track of Linux releases approaching end of life across a mixed fleet, and plan the upgrade before support runs out.

What end of life means

Every Linux release, except rolling ones like Arch, has a support period. When it ends, the release reaches end of life: no more package updates of any kind, including security fixes. The machine keeps running exactly as before, which is what makes end of life easy to miss - nothing breaks, it just quietly stops getting fixed.

Each vulnerability published after that date stays open on the machine for good. A year after end of life, that can be a long list, and since the vulnerabilities are public, so is the information about how to exploit them.

Maintenance is your runway

Most long-lived releases don't go straight from full support to nothing. They first enter a maintenance phase with security fixes only: Debian's LTS, Ubuntu's Expanded Security Maintenance, the second half of the ten-year lifecycle of Rocky Linux and AlmaLinux. Some of these are free, some need a paid subscription.

Maintenance is a good time to plan the upgrade, not a reason to postpone it: the machine is still safe, there's no pressure, and you can upgrade on your own schedule instead of in a hurry after the support has already ended.

Release dates and support phases for every release OS Checker tracks are on Linux support and end-of-life dates.

The problem with a mixed fleet

With one machine, the end-of-life date is easy to remember. With machines on Debian, Ubuntu and Rocky Linux, installed at different times on different releases, the dates are spread over years and across several vendors' websites. The machine nobody thinks about - the one that's just worked for five years - is usually the one that ends up running an unsupported release.

OS Checker shows each machine's OS status (active, maintenance or end of life) next to its package status, and the scheduled email report mentions any release entering maintenance or reaching end of life within the next 90 days.

Planning the upgrade

  1. List what's affected. Which machines run the release, and what each one does.
  2. Choose the target. Usually the newest release, so you won't have to do this again soon - for Ubuntu, the newest LTS.
  3. Choose the method. Debian, Ubuntu, Fedora and Mint all support upgrading in place, one release at a time. For Rocky Linux and AlmaLinux, the AlmaLinux ELevate project can upgrade between major releases, but reinstalling on the new release is the more common choice for servers.
  4. Test it. Upgrade a test machine or a copy first, and check the services that matter.
  5. Schedule it well before maintenance ends, with time to spare if something needs fixing.

Once a machine is on the new release, its packages are compared against that release's repositories and security data, and the OS status goes back to active.

More articles

Keep track of every machine

OS Checker shows which of your machines have outdated or vulnerable packages, and which releases are approaching end of life - in the terminal, on the web or by email.

Get early access