skip to content

Ubuntu

Ubuntu is the default Linux for many teams: LTS releases on a predictable cadence, apt plus snap packaging, and separate server and desktop editions. Interviews touch on the release model and what LTS support actually guarantees.

part ofLinux & distributionsoverview, primer and where to startread it →
on this pageshow

questions

6

Ubuntu releases are numbered like 23.10 and 24.04 LTS. What does that number encode, how often does each kind of release ship, and how long is each one supported?

level: juniorimportance: must knowfreq 72%

answer

  1. the number is a date
  2. April and October, always
  3. every second April is special
  4. nine months versus five years
  5. codename is what APT keys on

basics

~20 s

An Ubuntu version number is its release date in YY.MM form, so 24.04 means April 2024. A release ships every April and October; the April release of each even-numbered year is an LTS supported five years, while interim releases get nine months.

solid answer

~50 s

Ubuntu's version number is the release date, not a feature counter: `23.10` is October 2023 and `24.04` is April 2024. Canonical ships on a fixed six-month cadence, every April and every October, and every second April, in even-numbered years, is a Long Term Support release: 20.04, 22.04, 24.04. An interim release is supported for nine months, so a machine running one has to be upgraded roughly twice a year. An LTS gets five years of standard security maintenance from Canonical, and Ubuntu Pro's ESM can extend that further. Each release also carries an alphabetical adjective-plus-animal codename such as focal, jammy or noble, and it is the codename, not the number, that package sources and PPA builds are keyed on. For servers you pick an LTS, and many teams wait for the first point release, `24.04.1`.

go deeper

for a junior

Be able to decode the number on sight: 24.04 is April 2024, and the LTS suffix means five years of support instead of nine months. Name the six-month April/October cadence without hesitating.

for a middle

Explain the mechanics behind the calendar: what a point release actually refreshes, what the release, -updates, -security and -backports pockets are for, and why security fixes are backported rather than shipped as new upstream versions.

for a senior

Show that you plan around the clock. Talk about standardising a fleet on one LTS, scheduling the upgrade before support expires, and the fact that the five-year guarantee covers main rather than everything installed.

for a principal

Own the lifecycle policy: how often the organisation moves LTS-to-LTS, whether to buy Pro rather than upgrade on time, and the cost of letting individual teams drift onto different releases or interim ones.

## The number is a calendar date Ubuntu's version number encodes when the release came out: two digits of year, a dot, two digits of month. `18.04` is April 2018, `21.10` is October 2021, `24.04` is April 2024. Because the cadence is fixed, only two month values ever appear: `.04` and `.10`. There is no semantic-versioning meaning here, no "major" versus "minor" — the number tells you the age of the release, which is exactly what an operator planning a support window needs to know. If you can read the number, you can compute how much life the machine has left without looking anything up. ## Two kinds of release Every six months Ubuntu publishes an **interim release** (sometimes called a standard release). It is supported for **nine months** — six months until the next one, plus a three-month grace period. Interim releases are where new desktop stacks, newer toolchains and newer kernels land first. They are appropriate for a workstation that wants current software and for testing what the next LTS will contain; they are a poor fit for a server fleet, because nine months means upgrading roughly twice a year forever. Every **two years**, the April release is designated **Long Term Support (LTS)**: 16.04, 18.04, 20.04, 22.04, 24.04. An LTS receives **five years of standard security maintenance** from Canonical at no cost. That is the release almost every production fleet runs. Canonical's paid **Ubuntu Pro** subscription (free for personal use on a limited number of machines) adds Expanded Security Maintenance, which continues patching well past the five-year mark. ## What "supported" actually covers Support is not uniform across the archive. Ubuntu splits packages into four components: **main** and **restricted** are maintained by Canonical; **universe** and **multiverse** are community-maintained. The five-year LTS guarantee is a guarantee about **main** (and restricted); universe packages get best-effort community attention. This matters more than it sounds: a large fraction of what a real server installs lives in universe. Ubuntu Pro's `esm-apps` stream is precisely the product that extends Canonical's coverage to universe. Updates arrive through **pockets** attached to the release: the release pocket itself, `-updates` for bug fixes, `-security` for security fixes, and `-backports` for opt-in newer versions. Security patching an LTS means backporting the fix into the version the release shipped with, not upgrading to a new upstream version — which is why an LTS keeps a stable API surface for five years while still being patched. ## Point releases An LTS gets **point releases** roughly every six months for the first couple of years: `24.04.1`, `24.04.2`, and so on. A point release is not a new release you upgrade "to" — a machine that keeps up with updates is already at the point release. What changes is the **installation media**: refreshed ISOs and cloud images that roll up all published updates and, on desktop, a newer enabled hardware kernel, so a fresh install does not have to download two years of patches. The `.1` matters for a second reason. Ubuntu does not offer LTS-to-LTS upgrades to existing LTS users until the first point release of the target is out; the behaviour is governed by the `Prompt=` setting in `/etc/update-manager/release-upgrades`, whose default on LTS installs is `lts`. That is why the folk rule "wait for the .1" exists. ## Codenames are the machine-readable identity Each release also has a codename: an adjective and an animal starting with the same letter, advancing alphabetically — bionic, focal, jammy, noble. It is decoration for humans, but it is load-bearing for machines: APT sources name the **series** by codename, and a package repository or PPA publishes builds per series. This is why a third-party repository that has no build for your codename gives you nothing at all, and why the codename appears in `/etc/os-release` as `VERSION_CODENAME`. ## Choosing for a fleet The practical decision rule: **servers run LTS**, and you plan the upgrade before the five-year clock runs out, not after. Standardising an entire fleet on one LTS is what makes configuration management, base images and security patching tractable; running a mix of interim releases means every machine ages out on its own schedule. If you need software newer than the LTS carries, you get it from a vendor repository, a container image, a snap or the `-backports` pocket rather than by moving the whole machine to an interim release. ``` $ . /etc/os-release; echo "$VERSION_ID $VERSION_CODENAME" 24.04 noble ``` That one line answers both "how old is this box" and "which series do repositories have to target" — the two things the numbering scheme was designed to make obvious.

  • What is the .1 in 24.04.1, and why do people say to wait for it?
    It is a point release: refreshed installation media that rolls up every published update, plus a newer hardware-enablement kernel on desktop media. An already-updated machine is effectively there. It matters because Ubuntu only starts offering LTS-to-LTS upgrades to existing LTS users once the target's first point release exists, so 22.04 machines were not prompted toward 24.04 until 24.04.1.
  • Why does the codename matter to a machine rather than just to marketing?
    Packages are built and published per series, and APT sources name the series by codename. A repository or PPA that has no build for noble simply has nothing to offer a 24.04 box. The codename is exposed as VERSION_CODENAME in /etc/os-release, which is what scripts and configuration management branch on.
  • Does the five-year LTS promise cover every package you can install?
    No. Canonical's standard maintenance covers main and restricted; universe and multiverse are community-maintained on a best-effort basis. Plenty of real server dependencies live in universe, so a fleet can be "on a supported LTS" and still run packages nobody is patching. Ubuntu Pro's esm-apps stream is what extends Canonical coverage to universe.

saying these in an interview costs you the question

  • Thinks LTS means the software never changes
  • Says every Ubuntu LTS is supported ten years for free
  • Believes interim releases are supported for two years
  • Reads the version number as a sequential release counter
  • Assumes the five-year promise covers every installable package

context

open as a page

On Ubuntu, some software installs as a snap instead of coming from the distribution archive. What is a snap, and what changes for you as an administrator when a program arrives as one?

level: middleimportance: must knowfreq 58%

basics

~20 s

A snap is a self-contained, read-only squashfs image that the snapd daemon mounts under /snap and runs under confinement. It bundles its own dependencies, is versioned by revision rather than by the archive, updates itself automatically, and reaches the rest of the system only through declared interfaces.

open as a page

On Ubuntu, a colleague proposes adding a PPA to get a newer version of a package onto your production servers. What is a PPA, and what risks does adding one to a fleet carry?

level: middleimportance: should knowfreq 36%

basics

~20 s

A PPA is a Personal Package Archive: packages built and published on Launchpad by an individual or team, per Ubuntu series. Adding one means trusting that person's signing key with root on your machines, outside Canonical's security process, and it complicates every future release upgrade.

open as a page

Your fleet still runs Ubuntu 20.04 LTS, whose five-year standard support window has ended. What concretely stops happening on those machines, and what are your options?

level: seniorimportance: should knowfreq 46%

basics

~20 s

Nothing breaks on the day support ends, which is the danger: the release's security pocket simply goes quiet, so newly disclosed vulnerabilities in installed packages are never patched. The options are upgrading one LTS at a time, rebuilding on a current image, or buying Ubuntu Pro's ESM.

open as a page

A service on your Ubuntu servers was installed as a snap, and its version changed overnight with no deploy from your team. Why did that happen, and what control do you actually have over when snaps update?

level: seniorimportance: should knowfreq 36%

basics

~20 s

The snapd daemon auto-refreshes installed snaps from the Snap Store several times a day by default, so a snap can change version without any deploy. You can shift the schedule, hold refreshes, choose a slower channel or track, and revert a bad revision, but you cannot simply switch updating off forever.

open as a page

Ubuntu publishes Desktop, Server, minimal and cloud images of the same release. What actually differs between them, and does the kernel differ too?

level: middleimportance: nice to knowfreq 30%

basics

~20 s

They are the same distribution with different default package sets and installers, not different operating systems. Server drops the graphical stack, cloud images are prebuilt disks configured on first boot by cloud-init, minimal images strip extras, and Desktop defaults to the hardware-enablement kernel while Server defaults to the GA kernel.

open as a page