Ubuntu shipped nine interim releases between 4.10 "Warty Warthog" (26 October 2004) and 9.10 "Karmic Koala" (29 October 2009), each supported for 18 months and all fully end of life since Karmic's support ended on 30 April 2011. Canonical's own pages confirm the dates, but they state a default kernel for only three of the nine releases: 5.10, 8.10 and 9.10.
This post covers those nine interims: 4.10, 5.04, 5.10, 6.10, 7.04, 7.10, 8.10, 9.04 and 9.10. The LTS releases of the same era, 6.06 and 8.04, have their own posts. Every fact below comes from a page Canonical published: the release notes on documentation.ubuntu.com, the old-releases archive, the Ubuntu security notices, and older official pages on wiki.ubuntu.com and ubuntu.com that survive only as Wayback Machine copies. Each archived page is cited by its original address, with a note saying it was read from the archive. Where none of these sources states a fact, the post says "not stated" rather than filling the gap from memory.
Key takeaways
- Nine interim releases, five years. 4.10, 5.04, 5.10, 6.10, 7.04, 7.10, 8.10, 9.04 and 9.10, released every April and October from October 2004 to October 2009 (with the LTS 6.06 and 8.04 in between).
- 18 months of security updates each. The 5.10 notes promise "security updates for 18 months after each release", and the 13.04 notes later confirm that "Previous non-LTS releases were supported for 18 months."
- All end of life. The last of them, 9.10, reached end of life on 30 April 2011, according to an archived copy of the official Releases page. None of them ever had ESM, which only applies to LTS releases.
- Kernels are mostly not stated. The notes name Linux 2.6.12.6 for 5.10, 2.6.27 for 8.10, and show a 2.6.31 kernel image for 9.10. For the other six, the official pages we could reach do not state a default kernel.
- Security firsts of the era: Upstart replaced the old init in 6.10. AppArmor arrived in 7.10 with a CUPS profile. 8.10 offered an eCryptfs encrypted Private directory, and 9.04 an encrypted home with ext4 as an option. In 9.10, Evince gained an enforcing AppArmor profile.
- Official notes for 4.10, 5.04, 5.10, 6.10 and 7.04 are not on documentation.ubuntu.com. Those pages return 404, and the 7.10 page there is only a redirect stub. Archived copies of the 5.10, 6.10, 7.04 and 7.10 notes still exist. We found none for 4.10 or 5.04.
- Old ISOs are on old-releases.ubuntu.com, and nowhere else you should trust. Never connect a machine running one of these releases to a network.
The facts table: every release from 4.10 to 9.10
Release and end of life dates come from the "End of Life (EOL)" table on the official Ubuntu wiki Releases page, read from the Wayback Machine copy captured on 10 May 2012. The live page today only names the latest release, so the archived copy is the only official place we found that still lists these dates. Kernel and desktop facts come from each release's own notes. Where a cell says "not stated", no official page we fetched gives it.
| Version | Codename | Released | End of life | Default kernel | Desktop | Support length |
|---|---|---|---|---|---|---|
| 4.10 | Warty Warthog | 26 Oct 2004 | Apr 2006 (day not stated) | Not stated | Not stated (no notes found) | 18 months |
| 5.04 | Hoary Hedgehog | 8 Apr 2005 | Oct 2006 (day not stated) | Not stated | Not stated (no notes found) | 18 months |
| 5.10 | Breezy Badger | 12 Oct 2005 | Apr 2007 (day not stated) | Linux 2.6.12.6 | GNOME 2.12.1 | 18 months (stated in its notes) |
| 6.10 | Edgy Eft | 26 Oct 2006 | Apr 2008 (day not stated) | Not stated (notes mention a new optimised kernel, no version) | GNOME 2.16 | 18 months |
| 7.04 | Feisty Fawn | 19 Apr 2007 | Oct 2008 (day not stated) | Not stated | GNOME (version not stated) | 18 months |
| 7.10 | Gutsy Gibbon | 18 Oct 2007 | 18 Apr 2009 | Not stated | GNOME (version not stated) | 18 months |
| 8.10 | Intrepid Ibex | 30 Oct 2008 | 30 Apr 2010 | 2.6.27 (named in the known issues) | GNOME (version not stated) | 18 months |
| 9.04 | Jaunty Jackalope | 23 Apr 2009 | 23 Oct 2010 | Not stated | GNOME (version not stated) | 18 months |
| 9.10 | Karmic Koala | 29 Oct 2009 | 30 Apr 2011 | Not stated directly; an example shows 2.6.31-14-generic | GNOME (version not stated) | 18 months |
For 7.04 to 9.10, the notes refer to GNOME panels, menus or applications, so GNOME is the default desktop, but none gives a version number. For 4.10 and 5.04 we found no official notes at all.
The support column is 18 months for every row because the archived 5.10 notes promise "security updates for 18 months after each release", and the 13.04 release notes say that "Previous non-LTS releases were supported for 18 months." Each end of life date in the table falls 18 months after release, give or take a day.
Two LTS releases sit inside this range
6.06 LTS "Dapper Drake" (1 June 2006, per the archived Releases page) and 8.04 LTS "Hardy Heron" (24 April 2008) have their own posts: Ubuntu 6.06 LTS Dapper Drake and Ubuntu 8.04 LTS Hardy Heron. They matter here because they shaped the upgrade paths into 6.10 and 8.10.
Why are there no official release notes for 4.10 to 5.10, 6.10 and 7.04?
On 23 October 2026, Canonical's release notes site and its archive of older releases list 6.06 LTS and every release from 7.10 onward. The per-version addresses for 4.10, 5.04, 5.10, 6.10 and 7.04 all return a "Page not found" response. The 7.10 page exists, but its whole body is a single line, "#REDIRECT GutsyGibbon/ReleaseNotes",. Old wiki pages such as wiki.ubuntu.com/WartyWarthog now return 404, and the live wiki Releases page only names 26.04 as the latest release.
Canonical does not explain the gap on any page we found, so we will not guess at the reason. Archived copies show where the notes used to live:
- 5.10: wiki.ubuntu.com/BreezyReleaseNotes (Wayback copy of 10 November 2006, complete).
- 6.10: wiki.ubuntu.com/EdgyReleaseNotes (26 November 2006) and www.ubuntu.com/getubuntu/releasenotes/610 (16 March 2007), with the same feature list.
- 7.04: www.ubuntu.com/getubuntu/releasenotes/704 (24 April 2007), known issues only.
- 7.10: wiki.ubuntu.com/GutsyGibbon/ReleaseNotes (23 December 2010), known issues only.
- 4.10 and 5.04: we found no archived copies at the likely addresses, and the archive went temporarily offline during the search, so this is not proof that none exists. Their dates here come only from the archived Releases page.
What old-releases.ubuntu.com still confirms
The old-releases index is the one official source that covers all nine releases. It lists each by version and codename, and each directory still holds the ISO images, whose names show how installation changed:
- 4.10 has separate install images (i386, amd64, powerpc) and an i386 live image, such as
warty-release-live-i386.iso. - 5.04 names images by version and adds an amd64 live image (
ubuntu-5.04-live-amd64.iso). - 5.10 adds DVD images alongside the install CDs.
- 6.10 to 9.10 use the split that 6.06 LTS introduced: a
desktoplive image with a graphical installer, and analternateimage with the text installer.
The directory timestamps on the index (for example 4.10/ last modified 4 December 2006, 6.10/ on 5 September 2007) record when Canonical moved each release to the archive, not when it was released. Do not use them as release dates.
One date that does not line up
The first Ubuntu security notice, USN-1-1, covers libpng vulnerabilities in 4.10 "warty" and has a publication date of 23 October 2004. That is three days before the 26 October 2004 release date on the archived Releases page. Neither page explains the difference. We used 26 October 2004 because it comes from the page Canonical kept for release dates.
Release by release: what each interim changed
Each section below lists what the official notes say changed compared with the release before. Where the notes are only a known issues list (7.04 and 7.10), we report the changes those issues reveal, and nothing more.
4.10 "Warty Warthog" (26 October 2004)
The first Ubuntu release, with end of life in April 2006. USN-1-1, dated 23 October 2004, fixed several integer overflows in the PNG library for 4.10, which the notice says could lead to code execution when a crafted image was processed. Kernel, desktop version and default security settings: not stated in any official source we could fetch.
What changed: there was no previous Ubuntu release.
5.04 "Hoary Hedgehog" (8 April 2005)
Released 8 April 2005, end of life October 2006, per the archived Releases page. The 5.10 notes refer back to it as the April 2005 release, and their known issues describe upgrades from 5.04 to 5.10, so an in-place upgrade path existed. Old-releases has install and live images, including a live amd64 image, which 4.10 lacked. Kernel and desktop: not stated in any official source we could fetch.
What changed versus 4.10: not stated in any official source we could fetch, beyond the image changes above.
5.10 "Breezy Badger" (12 October 2005)
This is the earliest release with surviving official notes. The archived BreezyReleaseNotes page (read from the Wayback copy of 10 November 2006) lists:
- Desktop: GNOME 2.12.1, OpenOffice.org 2.0 beta 2, X.org 6.8.2, an editable GNOME menu and a graphical boot screen (USplash).
- Kernel and hardware: Linux 2.6.12.6 with many updated third party drivers, and a 64 bit kernel for PowerPC.
- Server: PHP5, installs directly onto LVM volumes, LTSP thin client support, NFS root through initramfs-tools, and OCFS2 and GFS cluster filesystems.
- Under the hood: GCC 4.0.1, glibc 2.3.5, Python 2.4.2, a new early userspace based on initramfs-tools, and more modular X.org packaging.
- Installation and architectures: a new OEM mode for preinstalled machines and automatic resizing for dual boot, on Intel x86, AMD64 and PowerPC.
On security, the notes state the support window (18 months of security updates) and the account model. In the OEM flow, the notes say the first user account created gets administrative rights through sudo.
What changed versus 5.04: the notes present the whole feature list as new since the April 2005 release. The concrete changes are the newer kernel (2.6.12.6), GNOME 2.12.1, initramfs-tools based early boot, LVM installs, OEM mode, and DVD images in the archive.
6.10 "Edgy Eft" (26 October 2006)
Released 26 October 2006, end of life April 2008. Read from the archived 6.10 release notes on ubuntu.com and the matching wiki copy, the release brought:
- Upstart. In the notes' own words: "The new init system, upstart, has now been turned on by default." The notes say most users would not notice, and they point to a cleaner design and faster boot as the reasons. Upgrading a server with
apt-get dist-upgradehad to be done in two passes, because the first pass upgraded everything except Upstart. - GNOME 2.16, with Tomboy notes, F-Spot replacing gThumb, Evolution 2.8.0, Firefox 2.0 (which the notes say included built-in phishing detection), OpenOffice.org 2.0.4 (described as mainly a security and bug fix release, dealing with sandboxing of Java applets and macros), and the Orca screen reader.
- Automated crash reports (Apport). When an application crashed, the system generated a problem report automatically, so users no longer had to build debug versions to report bugs.
- A new kernel, described as optimised but without a version number.
One more change is recorded in the 8.04 release notes rather than the 6.10 ones: from 6.10 onward, /bin/sh is dash rather than bash, as it had been in 6.06 LTS, to improve performance. Local shell scripts that relied on bash features could break.
What changed versus 6.06 LTS: Upstart in place of the old init, GNOME 2.14.1 to 2.16, dash as /bin/sh, Apport, and Firefox 2. The upgrade from 6.06 LTS was not offered by default because of the LTS's long support. The notes told users to start Update Manager with its -c option to look for it.
7.04 "Feisty Fawn" (19 April 2007)
Released 19 April 2007, end of life October 2008. The archived 7.04 release notes are known issues only and cover Ubuntu, Kubuntu and Edubuntu. What they reveal:
- Minimum memory of 256 MB.
- Upstart's job format changed. Anyone with serial consoles or custom changes in
/etc/inittabor/etc/event.dhad to update the syntax by hand: "respawn COMMAND" became "exec COMMAND" with "respawn" on a separate line, and "on EVENT" became "start on EVENT". - Network Manager ignored interfaces configured by hand in
/etc/network/interfaces. - Images: an Xubuntu desktop CD and a SPARC server CD are both mentioned in the known issues.
- Upgrades: only from 6.10. Users on older releases had to upgrade through each newer release in turn.
The 8.04 notes add one more fact about 7.04: PowerPC stopped receiving commercial support from Canonical as of 7.04 and moved to ports.ubuntu.com.
What changed versus 6.10: the Upstart configuration format, Network Manager in the default desktop, and the end of commercial PowerPC support. The kernel version and GNOME version: not stated.
7.10 "Gutsy Gibbon" (18 October 2007)
Released 18 October 2007, end of life 18 April 2009. The archived GutsyGibbon/ReleaseNotes page is again a known issues list, but it records the most important security first of this era: "Ubuntu 7.10 introduces an additional security layer called App Armor". AppArmor shipped with a profile for the CUPS print server, and the notes admit its support for printing was still incomplete, listing third party printer drivers, Bluetooth printers and some HP DeskJet models that failed with the profile enforced. The notes offered complain mode for the CUPS profile as a temporary workaround. That trade off between confinement and breakage is still with us; our guide on AppArmor complain or enforce on Ubuntu dev machines covers it for current releases.
Other changes the 7.10 notes reveal:
- Minimum memory rose to 384 MB for desktop CDs (256 MB for other install methods).
- sudo and the admin group. If the mail server task was chosen with "No configuration" during installation, the first user was created without sudo access, and the notes give recovery steps that rebuild the
admingroup entry in sudoers. - Repository rename. The "commercial" repository on archive.canonical.com was renamed "partner".
- NFS mounts now required installing the
nfs-commonpackage. - Graphics: the ati driver moved to xrandr 1.2, and the notes discuss Compiz desktop effects.
- Upgrades: from 7.04 only.
The 8.04 notes add that upstream dropped EVMS support, so from 7.10 it moved to Universe.
What changed versus 7.04: AppArmor, the partner repository, a higher memory floor, xrandr 1.2 graphics, and the EVMS move. Kernel and GNOME versions: not stated. The notes mention Linux 2.6.23 only in passing, without saying 7.10 shipped it.
8.10 "Intrepid Ibex" (30 October 2008)
Released 30 October 2008, end of life 30 April 2010. The 8.10 release notes on documentation.ubuntu.com are known issues, but several are significant:
- Kernel 2.6.27. The notes name "Linux 2.6.27" when discussing the Toshiba hotkey driver and the iwlagn and ath5k wireless drivers, and the installer issue names the package
linux-restricted-modules-2.6.27-7-generic. - Encrypted Private directory. Users of the alternate or server install who chose a password containing certain characters ended up with an encrypted
~/Privatedirectory that would not mount at login. The fix required an updatedecryptfs-utilspackage. This is the first release in the range whose official notes show eCryptfs encryption offered at install time. - Recommends installed by default. APT now installed packages listed in the Recommends field, not just Depends, which the notes justify by citing the Debian Policy Manual. Keep this in mind when comparing package lists across releases.
- X.org 1.5 with input hotplug and the new evdev driver, so InputDevice entries in
xorg.confwere ignored. - Java through OpenJDK 6, and a new Mobile Internet Device (MID) image.
- Upgrades: from 8.04 LTS directly; users of older releases had to move to 8.04 LTS first.
What changed versus 8.04 LTS: kernel 2.6.27, eCryptfs encrypted Private directories at install, Recommends by default, X.org 1.5 input hotplug, and legacy nVidia drivers replaced by the free nv driver on upgrade for older cards.
9.04 "Jaunty Jackalope" (23 April 2009)
Released 23 April 2009, end of life 23 October 2010. The 9.04 release notes cover:
- ext4 as an option, ext3 as the default. The notes suggest that users worried about an ext4 bug "install using the default ext3 filesystem" and convert later. Anyone converting
/or/bootto ext4 had to reinstall GRUB, or the system would not boot. The notes also warn of possible data loss when resizing ext4 offline with the tools shipped. - Encrypted home directories. Users who ran eCryptfs on the alpha builds were told to re-encrypt their files, because an upstream bug in the 2.6.28 kernel had written random kernel memory into encrypted file headers. The fix shipped in the release candidate. Users of 8.10 with encrypted Private directories were told to upgrade over the network, not from the live CD.
- AppArmor and eCryptfs did not mix cleanly. With enforcing profiles, AppArmor could deny access to files in encrypted directories because the kernel saw both the encrypted and decrypted paths. The notes describe adjusting profiles under
/etc/apparmor.d/. - Update handling changed. Update Manager now opened directly instead of showing a panel icon. Per the notes, security updates still prompted daily, while other updates prompted only weekly.
- Python 2.6 became the current Python version.
- An ARM port for the Babbage development board.
The notes mention a 2.6.28 kernel bug in the alpha builds but never state the default kernel of the final release, so we list it as not stated.
What changed versus 8.10: ext4 offered at install, encrypted home in place of only a Private directory, the daily security update prompt, Python 2.6, and an ARM image.
9.10 "Karmic Koala" (29 October 2009)
Released 29 October 2009, end of life 30 April 2011, and the last interim before 10.04 LTS. The 9.10 release notes record the biggest set of changes in the range:
- Evince confined by AppArmor. The GNOME document viewer "now ships with an enforcing AppArmor profile", which the notes say protects users against flaws in the PDF and image libraries it relies on. It was the first desktop application in this range that the official notes say shipped confined by default. Users with non-standard home locations had to adjust the home tunable in
/etc/apparmor.d/tunables/home. - Upstart takes over boot. The boot process was now Upstart based. Upstart read its jobs from
/etc/initinstead of/etc/event.d, with no automatic migration. Network handling moved to Upstart, so all network devices were handled as hotplug events, and the login screen could start before optional filesystems were mounted. Encrypted partitions listed in/etc/crypttabneeded matching/etc/fstabentries to avoid a console conflict at boot. - GRUB 2. The notes give separate instructions for GRUB 2 (edit
/etc/default/grub) and for GRUB 1 (edit/boot/grub/menu.lst), so new installs and upgraded systems could be on different boot loaders. Upgraders who kept a locally modifiedmenu.lstwere warned their system would not boot newly installed kernels, and that they had to act by hand to make sure they were running the current kernel with security support. - Kernel. The notes do not name the default kernel version, but their GRUB example shows
vmlinuz-2.6.31-14-generic. - Kernel mode setting (KMS) was on by default for Intel graphics.
- rsyslog replaced sysklogd, and MySQL 5.1 became the default MySQL server.
- Ubuntu Enterprise Cloud shipped Eucalyptus 1.6, and the server CD offered an "Install Ubuntu Enterprise Cloud" option.
- Ubuntu One shipped in the desktop.
- Upgrades: from 9.04, and Kubuntu users could jump directly from Kubuntu 8.04.
What changed versus 9.04: confined Evince, Upstart based boot and networking, GRUB 2 on new installs, KMS, rsyslog, MySQL 5.1, and UEC. The notes do not say whether ext4 became the default filesystem; they repeat the 9.04 advice about converting to ext4, so we mark the default filesystem for 9.10 as not stated.
The "what changed" table
| From | To | Main changes recorded in official notes |
|---|---|---|
| None | 4.10 | First release; first USN (libpng) |
| 4.10 | 5.04 | Live image for amd64; other changes not stated |
| 5.04 | 5.10 | Linux 2.6.12.6, GNOME 2.12.1, initramfs-tools, LVM installs, OEM mode, LTSP thin clients |
| 6.06 LTS | 6.10 | Upstart by default, GNOME 2.16, dash as /bin/sh, Apport crash reports, Firefox 2 |
| 6.10 | 7.04 | New Upstart job syntax, Network Manager, end of commercial PowerPC support |
| 7.04 | 7.10 | AppArmor with a CUPS profile, partner repository, xrandr 1.2, EVMS to Universe |
| 8.04 LTS | 8.10 | Linux 2.6.27, eCryptfs Private directory, Recommends installed by default, X.org 1.5 |
| 8.10 | 9.04 | ext4 optional (ext3 default), encrypted home, daily security update prompts, Python 2.6, ARM |
| 9.04 | 9.10 | Enforcing AppArmor profile for Evince, Upstart boot, GRUB 2, KMS, rsyslog, UEC |
Security firsts in this era, confirmed one by one
Several claims about this era are often repeated. Here is what the official sources actually support.
| Claim | What the official sources say | Verdict |
|---|---|---|
| AppArmor arrived in 7.10 | 7.10 notes: "Ubuntu 7.10 introduces an additional security layer called App Armor", with a CUPS profile | Confirmed for 7.10 |
| AppArmor profiles widened in later releases | 9.04 notes discuss enforcing profiles with eCryptfs; 9.10 notes add an enforcing profile for Evince | Confirmed for 9.04 and 9.10 |
| ufw first shipped in 8.04 | Not mentioned in the 8.04, 8.10, 9.04 or 9.10 notes we fetched | Not stated in the official notes we could fetch |
| Encrypted home in 9.04 or 9.10 | 8.10 notes show an encrypted ~/Private directory; 9.04 notes discuss encrypted home directories with eCryptfs | Encrypted Private in 8.10, encrypted home in 9.04 |
| ext4 default in 9.10 | 9.04 notes call ext3 the default and ext4 optional; 9.10 notes do not state a default | ext4 optional in 9.04; 9.10 default not stated |
| Upstart introduced in 6.10 | 6.10 notes: Upstart switched on by default | Confirmed |
Other security relevant defaults in the notes:
- sudo for administration. The 5.10 notes say the first account has administrative rights through sudo, and the 7.10 notes show administrators were members of a group named
admin. - Security update prompts. From 9.04, the notes say security updates prompted daily while other updates prompted weekly.
- Security pocket. The 8.04 notes show the
gutsy-securityline insources.listand its ports equivalent, so the separate security pocket that Ubuntu still uses was in place by 7.10. - The 18 month promise. It was a promise of security updates. End of life meant the end of those updates for that release.
Upstart in 6.10, and what replaced it
The 6.10 notes turned Upstart on by default and gave a cleaner design and faster boots as the reasons. Over the next three interim releases its role grew. In 7.04 its job syntax changed. In 9.10 it ran the boot process and network bring-up, read jobs from /etc/init, and could not run jobs inside a chroot, which the 9.10 notes list as a known issue for package upgrades in chroots.
Upstart stayed the init system through the Unity years. The 15.04 release notes record the change: "systemd has replaced Upstart" as the standard boot and service manager on all Ubuntu flavours except Touch, although Upstart still controlled user sessions in that release. Anyone with custom Upstart jobs was told to write a systemd unit or SysV init script. Our post on the 10.10 to 17.10 interim releases covers that transition in more detail.
Why does this matter today? Job files in /etc/event.d point to a release before 9.10, which moved Upstart jobs to /etc/init, and Upstart without systemd points to a release before 15.04. Either way, the machine is years past its last security update.
How do you check whether a machine is running one of these releases?
Any machine still running 4.10 to 9.10 has had no security updates since April 2011 at the latest. These steps use commands from Canonical's documentation, fetched for this post.
Step 1: Read the release and codename
The lsb_release manual page documents the -a option, which prints the distributor, description, release number and codename:
lsb_release -a
On current releases, the same page says the tool reads /etc/os-release and /usr/lib/os-release. The os-release manual page documents that file and its fields, including VERSION_ID and VERSION_CODENAME:
cat /etc/os-release
Look for any of the codenames in this post: warty, hoary, breezy, edgy, feisty, gutsy, intrepid, jaunty or karmic. On a very old system, the official notes do not say whether /etc/os-release exists, so if it is missing, rely on lsb_release -a. If even that is missing, open /etc/apt/sources.list. The 8.04 notes show entries of the form deb http://security.ubuntu.com/ubuntu gutsy-security main restricted, and the codename in those lines tells you the release.
Step 2: Note the kernel
On a running system, the kernel image names under /boot show the version series. The 9.10 notes use vmlinuz-2.6.31-14-generic as their example, and the 8.10 notes name the 2.6.27-7-generic flavour. Inside a container, remember that the kernel belongs to the host, not the image.
Step 3: Check Ubuntu Pro and ESM status (on supported hosts)
None of these releases has ESM or Ubuntu Pro coverage. The release cycle page says ESM "extends the life of LTS releases", and interims are not LTS releases. Run the check on the newer hosts in the same inventory to see which ones past standard support are actually getting fixes. The Ubuntu Pro client tutorial uses:
pro status
Step 4: Move to a supported release
There is no supported upgrade path from 9.10 to anything current. The step by step chains in the old notes would now cross more than a dozen end of life releases, so a rebuild on a current LTS is the realistic option.
Once the machine is on a supported LTS, Canonical's server guide How to upgrade your Ubuntu release covers keeping it current. It says you "can only upgrade from one LTS release directly to the next sequential LTS release". Start by applying all updates, including phased ones:
sudo apt update
sudo apt dist-upgrade -o APT::Get::Always-Include-Phased-Updates=true
If /run/reboot-required exists, reboot. Then back up and run the upgrade:
sudo do-release-upgrade
The same guide says LTS to LTS upgrades are only offered after the first point release, and it recommends an LTS because interims today get nine months of support.
Step 5: Checking container images
For a base image, run cat /etc/os-release inside the container, as the os-release page describes. Our guide on how to check if your base image operating system is end of life covers doing this across a registry, and where to get end of life dates explains why to prefer upstream pages.
Where to get these releases, and why not to network them
The old-releases.ubuntu.com index holds every release in this post, with the original install, live, desktop and alternate images. Do not download them from anywhere else.
People still download them for good reasons: reproducing a historical bug, reading data from an old disk, teaching, or checking how a legacy appliance behaves. Do that in a virtual machine with no network interface, or on an isolated segment with no route to the internet or production. Every kernel, OpenSSL, OpenSSH, glibc and sudo vulnerability published after April 2011 is unpatched on these systems. Even the fixes released during their support window, such as USN-1-1 for libpng in 4.10, are only present if the image was updated before end of life. Our post on whether to upgrade, extend, isolate or retire end of life software covers the choices for systems you cannot simply replace.
Common mistakes
- Treating directory dates on old-releases as release dates. The 4.10 directory shows December 2006, more than two years after Warty shipped. Use the archived Releases page or the release notes.
- Filling in kernels from memory. For six of the nine releases, Canonical's surviving pages do not name the default kernel. If an inventory or audit needs it, read it from the machine or image, not from a secondary list.
- Assuming AppArmor was always enforcing everything. The 7.10 notes name a CUPS profile, and the 9.10 notes add Evince. A host from this era has none of the profiles that later releases added.
- Assuming ext4 or encrypted home was on. Both were options. 9.04 defaulted to ext3, and the encryption features were opt in.
- Thinking an interim could be extended. ESM and the Legacy add-on cover LTS releases only. There was never paid support beyond 18 months for 4.10 to 9.10.
- Trusting old update prompts. No security updates will ever be published for these releases again. A machine that reports no pending updates is not patched; it is simply out of support.
- Reusing old upgrade paths. The notes' step by step chains (6.10 to 7.04 to 7.10 to 8.04) were for systems in support at the time. Today, rebuild.
- Linking or downloading ISOs from mirrors you cannot verify. Use old-releases.ubuntu.com only.
FAQ
What was the first version of Ubuntu?
Ubuntu 4.10 "Warty Warthog", released on 26 October 2004 according to the archived official Releases page. Its end of life was April 2006. The first security notice, USN-1-1, covered it and is dated 23 October 2004.
Is Ubuntu 9.10 still supported?
No. Ubuntu 9.10 "Karmic Koala" reached end of life on 30 April 2011, and it never had ESM. The same is true of every release from 4.10 to 9.10.
How long were early Ubuntu releases supported?
Eighteen months each. The 5.10 notes promise security updates for 18 months after each release, and the 13.04 notes confirm that earlier non-LTS releases had 18 months before the cut to nine months in 2013.
What kernel did Ubuntu 9.10 use?
The 9.10 notes do not name a default kernel version directly, but their boot loader example uses vmlinuz-2.6.31-14-generic, a 2.6.31 kernel. For 8.10, the notes name Linux 2.6.27, and for 5.10, Linux 2.6.12.6.
When did Ubuntu add AppArmor?
In 7.10 "Gutsy Gibbon". Its notes describe AppArmor as an additional security layer new in that release, with a profile for the CUPS print server. 9.10 added an enforcing profile for the Evince document viewer.
When did Ubuntu switch to Upstart, and when did it leave it?
Upstart was turned on by default in 6.10 "Edgy Eft". The 15.04 notes record that systemd replaced Upstart as the standard boot and service manager, with Upstart still controlling user sessions in that release.
Did Ubuntu 9.04 use ext4 by default?
No. The 9.04 notes offer ext4 but call ext3 the default filesystem and warn about an ext4 bug and resize risks. The 9.10 notes do not state which filesystem was the default.
When did Ubuntu add encrypted home directories?
The 8.10 notes show an eCryptfs encrypted ~/Private directory offered at install. The 9.04 notes discuss eCryptfs encrypted home directories and tell users of the alpha builds to re-encrypt after a kernel bug.
Where can I download Ubuntu 4.10 or other old versions?
From old-releases.ubuntu.com, which lists every end of life release from 4.10 onward. Run them only offline or on an isolated network.
Fix it without waiting for upstream
Nothing on a 4.10 to 9.10 system will be fixed by Canonical again: those releases stopped getting USNs between 2006 and 2011. What you can still control is the application code and dependencies that run on old or new Ubuntu bases, which is where the steps below apply.
Whatever the vulnerability, most of the risk sits in two gaps. The first is the time between a fix being published and that fix actually running in your production builds. The second, and worse, is the time before any fix exists at all, while a maintainer works out a patch and a release schedule. Waiting through both gaps is a habit, not a requirement. Safeguard gives teams three ways to close them.
1. Autonomous remediation: pull requests, not tickets
When a fixed version exists, Safeguard's Griffin models open a tested, policy gated pull request that moves the affected dependency to the safe version. You can run it on one repository or in bulk across every project that carries the vulnerable version. Remediation covers eight categories, including dependencies, licenses, security posture and findings. Reachability analysis ranks the vulnerable code paths your application actually calls first, so the first pull requests you merge are the ones that matter most. Autonomous remediation ships switched off, with every category set to Manual, so your team decides how much runs on its own and what still needs a human approval.
2. Gold Open Source: the safe version in seconds, free
gold.safeguard.sh is free and needs no login. Search any CVE or package to see affected and fixed versions, CVSS, EPSS, CISA KEV status and a recommended safe version, or use the "Am I affected?" checker. The same data is available through a free read API, README status badges and RSS threat feeds. The safeguard-sh/gold-scan-action GitHub Action can fail a build on a known exploited vulnerability, on any known vulnerability, or never, so a version you have just removed cannot quietly come back in next week's merge.
3. Gold Registry: start from components that are already fixed
registry.safeguard.sh provides hardened, drop in replacements for upstream packages and container images. Every Gold artifact is held continuously to zero exploitable critical or high CVEs, zero malware and a completed license check, with SLSA L3 or higher provenance, a Sigstore signature and a public evidence page you can hand to an auditor. An artifact loses its Gold badge if it regresses. Teams can point their own package directory at the registry so hardened equivalents resolve without changing how developers install anything.
When upstream has no fix yet, or will not ship one, Safeguard first works to get the fix accepted upstream. If the issue is severe or upstream will not move, Safeguard builds a fork, fixes the vulnerability there and publishes a hardened Gold build, so you are not stuck on a maintainer's release schedule. You can also request a hardened, compatibility tested build of a specific package. This fork and patch flow is in early access today, so ask which packages it covers before you plan around it.
| Your situation | What to use |
|---|---|
| A fixed version exists | Autonomous remediation opens the upgrade pull request; Gold Open Source confirms the safe version |
| You need to know today whether you are affected | Gold Open Source lookup and "Am I affected?" checker, free and without login |
| You want vulnerable versions to stop shipping | The Gold scan GitHub Action in CI, plus Safeguard policies and gates |
| Upstream has no fix yet, or will not ship one | A custom Gold request; fork and patch (early access) |
| You want to start clean on new projects | Pull hardened components and images from Gold Registry |
One honest limit: when the vulnerable code lives in a vendor appliance, a hosted service or an operating system runtime you do not build yourself, the fix still has to come from that vendor or distribution. The steps above apply to the open source dependencies and container images you build and ship, which is where most teams carry the largest and least tracked share of their exposure.
See how Safeguard would help
None of these demos brings a 2004 to 2009 Ubuntu release back into support, and none replaces a rebuild on a current LTS. What they show is how to find what is inside the images and repositories you build, and how to move the dependencies you control to fixed versions with a person approving each step.
This demo sets up the Safeguard runner on your own machine, approves it with its device code, then scans from the terminal. Scanning a container image produces an SBOM that lists the operating system packages and versions alongside the application components, which is how you spot an image still built on a forgotten old base before it reaches production.
Click through it at your own pace, or open it full screen.
In this session you install the Safeguard CLI, run safeguard to open the interactive terminal and ask it to fix the lodash CVE in a repository. It reads the finding and advisory, asks before each command, edits package.json to lodash 4.17.21, runs npm install and npm test with your approval, prints a summary and pushes nothing. The same flow applies when you rebuild a legacy application on a current LTS: the operating system packages come from Canonical, but the application's own dependencies are yours to update.
Click through it at your own pace, or open it full screen.
This demo connects Claude to the Safeguard MCP server with OAuth and lets you choose which tools Claude can use. Once connected, you can ask in plain language which of your projects contain a given component and version, which is the question to ask after you find one legacy image and want to know whether others share its packages.
Click through it at your own pace, or open it full screen.
You can download Safeguard at safeguard.sh/download and read the CLI documentation at docs.safeguard.sh/docs/cli.
For the rest of the series, start at the hub, every Ubuntu release from 4.10 to 26.10, then continue with 10.04 LTS Lucid Lynx and the interim releases from 10.10 to 17.10.
Quick check
An old VM's sources.list contains lines with "jaunty-security". Is it getting security updates?
No. Jaunty is Ubuntu 9.04, which reached end of life on 23 October 2010 according to the archived official Releases page. Interim releases never had ESM, so the security pocket for it receives nothing new. Isolate the VM and plan a rebuild on a current LTS.
Which release first shipped AppArmor, and which application did it confine?
Ubuntu 7.10 "Gutsy Gibbon". Its release notes say it introduced AppArmor as an additional security layer, with a profile for the CUPS print server. Two years later, 9.10 added an enforcing profile for the Evince document viewer.
Sources
- Ubuntu release notes index
- Ubuntu release notes: older releases archive
- Ubuntu release notes: 4.10, 5.04, 5.10, 6.10 and 7.04 (each returned "Page not found" on 23 October 2026)
- Ubuntu 6.06 LTS release notes
- Ubuntu 7.10 release notes (redirect stub only)
- Ubuntu 8.04 LTS release notes
- Ubuntu 8.10 release notes
- Ubuntu 9.04 release notes
- Ubuntu 9.10 release notes
- Ubuntu 10.04 LTS release notes
- Ubuntu 13.04 release notes
- Ubuntu 15.04 release notes
- Ubuntu wiki: Releases (live page, and the Wayback Machine copy of 10 May 2012 used for release and end of life dates: archived copy)
- Ubuntu wiki: BreezyReleaseNotes (original page gone; read from the Wayback Machine copy of 10 November 2006)
- Ubuntu wiki: EdgyReleaseNotes (original page gone; read from the Wayback Machine copy of 26 November 2006)
- Ubuntu 6.10 release notes on ubuntu.com (original page gone; read from the Wayback Machine copy of 16 March 2007)
- Ubuntu 7.04 release notes on ubuntu.com (original page gone; read from the Wayback Machine copy of 24 April 2007)
- Ubuntu wiki: GutsyGibbon/ReleaseNotes (original page gone; read from the Wayback Machine copy of 23 December 2010)
- Ubuntu old releases archive and the per-release directories for 4.10, 5.04, 5.10, 6.10, 7.04, 7.10, 8.10, 9.04 and 9.10
- Ubuntu security notice USN-1-1: PNG library vulnerabilities
- Ubuntu security notices
- Ubuntu release cycle
- Ubuntu Server documentation: How to upgrade your Ubuntu release
- Ubuntu Pro client: basic commands tutorial
- Ubuntu manpages: lsb_release(1)
- Ubuntu manpages: os-release(5)
Last reviewed: 23 October 2026.