Linux distros history: Slackware, Debian and Red Hat
Most Linux distros trace back to Slackware, Debian or Red Hat. Follow the family tree, package managers, and wetin your VPS image inherit.
Wetin Linux distribution actually be
The history of Linux distributions start with one gap: Linux kernel by itself no fit do anything wey person fit use. E boot and find hardware. Then e stop. Somebody need add userland, choose how to install and update software, and promise to keep fixing am for years. Distribution na that set of choices, plus the group of people wey remain around afterwards.
E get five parts. Change any one of dem and you get different distribution, even when most of the binaries match:
- A kernel, for version wey the project choose, with the patches and drivers wey e add.
- A userland: the C library, the shell, the init system, the standard commands.
- A package format, and the tool wey install am.
- A release policy: wetin fit change, how often, and how long dem go fix each release.
- People: package maintainers, a security team, and person wey go answer when package break.
Kernel na the shared part, so two Linux distributions dey much closer to each other than either one dey to another Unix. You suppose remember this when you compare Linux and FreeBSD as server platforms, where one project build and release the kernel and base userland together. For Linux, separate upstream projects provide those parts, and na distribution dey make dem work together.
History of Linux distributions for three families
Projects wey start for 1993 and 1994 later become three families: Slackware, Debian and Red Hat. Almost every image wey dey VPS control panel today na one of dem or descendant of one. Descendant dey inherit package format, file layout and usually release habits. Na why Debian derivative still dey feel like Debian even after dem remove the branding.
Independents deserve their own line because dem no fork from anybody. Arch, Gentoo, Alpine, NixOS and Void each write their own package manager and their own rules. Two of dem, Arch and Alpine, still end up for your provider image list, but the reason no get anything to do with desktop.
1992: distributions wey come before the families
MCC Interim Linux show for February 1992. Owen Le Blanc assemble am for Manchester Computing Centre. E put the kernel and GNU (GNU's not Unix) tools inside two floppy images, with menu-driven installer. E exist because to do all of that by hand fit take one full day work.
SLS (Softlanding Linux System), wey Peter MacDonald release for 1992, go further and add X (the X Window System) plus TCP/IP networking. SLS na why the word distribution get the meaning wey e get today. But e get plenty bugs, and maintenance dey slow. For 1993, two people separately decide say dem go fix am. One rebuild am. The other start again with written rules.
Slackware, 1993: di oldest family wey still dey release
Patrick Volkerding release Slackware 1.00 on 16 July 1993. E build am from SLS after dem remove the bugs. Dem still dey maintain am, so na the oldest Linux distribution wey still survive.
Slackware package na compressed tar archive wey get install script inside. No dependency resolution dey happen: nothing dey check whether the library wey your new package need already dey for disk. Na this one decision shape everything wey follow. If the tool no fit resolve dependencies, the set of packages wey dem release suppose already work together by design. So releases no dey come often and dem dey conservative. Slackware 15.0 arrive for February 2022, six years after 14.2.
The family small. SUSE first releases for mid 1990s build on Slackware, before the project follow im own direction with YaST and later the RPM package format. This last part dey confuse people. SUSE and openSUSE dey use RPM packages, and dem no be Red Hat derivatives. Na the format travel. The lineage no travel.
Debian, 1993: social contract and three suite pipeline
Ian Murdock announce Debian on 16 August 1993, three weeks after Slackware and for the same reason. The name join im Debra, im partner, with im own name. Debian Manifesto follow for January 1994 and set the terms: volunteers go maintain this distribution openly, no be company.
Debian come write the terms down. Dem adopt Debian Social Contract and DFSG (Debian free software guidelines) for July 1997, and DFSG become the basis of Open Source Definition for 1998. Document wey dem write to settle wetin fit enter one distribution end up defining licence category for the whole industry. Na also why your sources.list get components: main hold software wey meet the guidelines, contrib and non-free hold wetin no meet dem, and Debian 12 add non-free-firmware so laptop wey get wireless card fit install without plenty searching.
The tooling na the other inheritance. dpkg install one package and refuse when something dey miss, as e print dpkg: dependency problems prevent configuration of. APT (advanced package tool), wey become the default with Debian 2.1 for 1999, na the layer wey work out wetin else to fetch and the order to fetch dem. Every apt command for every Debian derivative come from that work.
The release machine get three suites and one rule. Maintainer upload to unstable, wey always get codename sid. Script migrate the package go testing after roughly 5 to 10 days, if e build for the release architectures and no new release critical bug show. Testing go freeze, release team clear wetin remain, then stable go ship when the bug list don short reach enough level. E no dey follow date. Na why Debian stable look old and dey behave well: version numbers stop for freeze, while security fixes continue to dey backport into dem.
Governance sef dey written down, with project leader wey dem elect and binding general resolutions. For 2014, that system choose systemd as the default init system, and people wey no agree fork Devuan, wey make im first release for 2017. The bigger descendants na Ubuntu, Raspberry Pi OS, Proxmox VE, Kali and Linux Mint.
Red Hat, 1994: RPM, then the split into Fedora and RHEL
Marc Ewing release the first Red Hat Linux around Halloween 1994. Bob Young company buy am for 1995, and the two of dem build the first Linux business wey sell support instead of software. Red Hat go public on 11 August 1999. IBM close the acquisition of the company for July 2019 for about 34 billion dollars, so the distribution wey most enterprise software dey certify against don remain IBM property since then.
The technical contribution wey last na RPM (Red Hat package manager), wey Erik Troan and Marc Ewing write for Red Hat Linux 2.0 for 1995. RPM dey declare the dependencies wey e need, and dem dey produce am from spec file, wey be build recipe anybody fit run. Na this second property make independent rebuilds of Red Hat enterprise product possible later.
Red Hat Linux 9 for 2003 na the last for the original line. The company split am into two: Fedora Core 1 for November 2003 as the fast community release, and RHEL (Red Hat Enterprise Linux), wey start as Advanced Server 2.1 for 2002, as the slow paid one. The reason clear. One product no fit be both the place wey dem dey test new versions and the platform wey bank dey run untouched for ten years. The two sides connect: RHEL major version dey branch from Fedora release, dem stabilise am, then freeze am. The package tool move for the same schedule, from yum for the 2000s to dnf as Fedora default for 2015, with rpm underneath both.
Why CentOS stop to be free RHEL rebuild
CentOS start for 2004 with one simple work: take the source packages wey Red Hat publish, remove the trademarks, rebuild dem, then give the result away. E become the default free server distribution for ten years, and Red Hat bring the project inside the company for 2014.
For 8 December 2020, Red Hat announce say CentOS Linux 8 go end for 31 December 2021, eight years before the date wey dem publish before. Dem also announce say the name go continue as CentOS Stream. Stream no be rebuild. Na the branch wey dem dey use cut RHEL minor releases from, so e dey ahead of RHEL instead of behind am. For machine wey you plan keep for years, ahead no be the correct direction, because you go receive changes before Red Hat paying customers receive dem.
Two rebuilds show for 2021. Gregory Kurtzer, wey co-found CentOS, start Rocky Linux. CloudLinux fund AlmaLinux. For June 2023, Red Hat stop publishing RHEL sources anywhere except CentOS Stream and its customer portal. Rocky continue to target identical rebuilds. AlmaLinux change its goal to ABI (application binary interface) compatibility. This mean software wey dem build for RHEL go run, but e no promise say the bug list go match line by line. Oracle, SUSE and CIQ later set up OpenELA for that same year to publish shared sources.
If provider image list still talk say CentOS, find out which one e mean before you build on top of am.
cat /etc/os-releaseNAME="CentOS Stream" na rolling development branch wey dey lead RHEL. NAME="AlmaLinux" or NAME="Rocky Linux" na rebuild wey dey follow am, with ten-year window.
Ubuntu, 2004: Debian unstable snapshot wey dey follow calendar
Ubuntu 4.10 release on 20 October 2004, and Mark Shuttleworth fund am. The relationship between Ubuntu and Debian na technical process, no be sentiment. Every cycle start when dem import packages from Debian unstable enter the new Ubuntu release. Dem dey do these imports until Debian Import Freeze for middle of the cycle. After that, Ubuntu dey maintain im own changes. Plenty Ubuntu packages na Debian package plus one delta, and changelog dey show which one.
The other side na the calendar. Debian release when e ready. Ubuntu release for April and October, and version number na the date: 24.04 come out for April 2024. Every second April release na LTS (long term support). Na this one providers mean when dem list Ubuntu without any qualifier. Which of the two you suppose use for server na the main subject of choosing between Ubuntu LTS and interim releases, and moving from one LTS go the next get im own procedure, wey the 24.04 to 26.04 upgrade cover.
One detail dey catch server admins every year. Ubuntu archive divide into components. main Canonical maintain am for the full support window. universe community maintain am, and the security coverage na different promise. apt install no show anything about the difference. One command fit show am:
apt-cache policy nginxRepository line wey end with /main mean say Canonical security team dey responsible for that package. Line wey end with /universe mean say community dey responsible. Check am for anything wey face the internet.
Arch, 2002: rolling releases and the cost of a partial upgrade
Judd Vinet release Arch 0.1 for 11 March 2002, with package manager wey e write by himself, pacman, and build recipes wey be plain shell scripts. Arch no get versioned releases at all. The install media na dated snapshots of the same rolling repositories, so machine wey dem install for 2019 and update every week dey run the same Arch as machine wey dem install today. AUR (Arch user repository) dey hold build recipes wey users contribute. Dem na recipes, no be packages wey dem review, so to read PKGBUILD before you run am na part of the work.
Rolling get one failure mode, and na user dey cause am every time. If you install one package with pacman -Sy foo, e go refresh package database, then install one new binary wey link against libraries newer than the ones wey dey for disk. Programs go then fail like this:
error while loading shared libraries: libcrypto.so.3: cannot open shared object file: No such file or directoryThe supported operation na pacman -Syu, wey dey update everything together. The project still dey post news entries wey explain when manual intervention dey required before some upgrades, and if you run the upgrade without reading dem, e fit leave machine wey no go boot.
Because of this, Arch no too good for server wey you plan to ignore. Machine wey you update every week dey okay. Machine wey you update once, one year later, go give you every skipped intervention for one run.
Alpine: small distribution wey containers make popular
Alpine start around 2005 as fork of LEAF (Linux embedded appliance framework), wey come from Linux Router Project. Natanael Copa build am for appliances, no be for desktops. E replace plenty of the usual userland: musl instead of GNU C library, BusyBox instead of GNU core utilities, OpenRC instead of systemd, and apk as package manager. Alpine 3.0 for 2014 na the release wey move to musl.
Containers make am popular. Alpine base layer small well-well compared with Debian or Ubuntu base. So from 2016, e become common base image, and plenty people wey never install Alpine dey run am every day.
The cost be say musl no be glibc, and the difference dey show as bugs wey look unrelated. Binary wey link against glibc go fail for Alpine with message wey make people search for file wey already dey there:
sh: ./myapp: not foundThe program dey exist. But its ELF interpreter no dey, because glibc loader no dey installed. Python na another regular surprise: prebuilt wheels wey build for manylinux no go install on musl. So pip go fall back to compiling from source and stop when compiler no dey installed. musllinux wheel standard from 2021 solve this for projects wey publish those wheels, but e no solve am for any other project.
As host operating system for VPS, Alpine install small and update fast, but e put you for path wey most documentation no assume. Any guide wey tell you to run systemctl enable need you translate am to rc-update add.
The immutable generation: atomic updates and image based servers
This new branch change the way updates dey work instead of just changing package list. An ostree based system keep /usr read only. An update na complete new filesystem tree wey dem download, stage, then switch to when next reboot happen. The previous tree still dey as boot entry, so if update bad, you fit undo am by rebooting into the old one.
Fedora Silverblue carry this model go desktop for 2018, and Fedora CoreOS carry am go servers for 2019, after Red Hat buy CoreOS for 2018. Flatcar Container Linux continue the original Container Linux after dem retire am for 2020. openSUSE MicroOS reach the same result through btrfs snapshots and transactional-update. For 2024, Red Hat add image based mode to RHEL, wey dem build on bootc. For this mode, operating system dey ship as container image, and you update machine by pointing am to new tag. Talos Linux go further by removing shell and SSH completely. You configure the machine through an API, so nothing dey to log in to. NixOS, wey dem first release for 2007, reach this result from another direction. Dem build the whole system from one declarative configuration, and previous generations remain bootable.
Your provider likely no offer any of these as one click image, because dem expect say Ignition or cloud-init go configure am for first boot, instead of administrator editing files over SSH. These systems dey useful across many identical machines. Na the situation you dey face once you dey manage several Linux servers at once and need prove say every one match the others.
How long dem dey support one release?
Release policy na the part of distribution wey you go live with for the longest time, and dem dey publish am as number of years. See the support windows for 5 current server releases.
The data behind this chart
[
{
"distro": "Alpine 3.x",
"standard_years": 2,
"extended_total_years": 2
},
{
"distro": "Debian 13",
"standard_years": 3,
"extended_total_years": 5
},
{
"distro": "Ubuntu 26.04 LTS",
"standard_years": 5,
"extended_total_years": 10
},
{
"distro": "AlmaLinux 10",
"standard_years": 10,
"extended_total_years": 10
},
{
"distro": "RHEL 10",
"standard_years": 10,
"extended_total_years": 13
}
]Alpine dey support each 3.x branch for 2 years. Na why e better for container image wey you dey rebuild often pass host wey you leave untouched. Debian security team dey cover stable release for about 3 years. After that, the LTS team dey carry common architectures reach roughly 5 years altogether. Ubuntu LTS dey give you 5 years for packages inside main. Ubuntu Pro subscription dey extend am reach 10 years, and personal users fit use am free for small number of machines. RHEL 10 publishes 10 years. Paid extended life cycle support add-on dey stretch am reach 13 years. AlmaLinux 10 match the RHEL window of 10 years without any subscription. Na the whole reason why these rebuilds dey exist.
Arch no get row here because rolling distribution no get release wey need support. The number wey matter for Arch na how long you fit leave machine untouched. Dem dey measure am in weeks.
Where these numbers come from
Each figure na the vendor own published policy, wey dem check for August 2026. Check dem before you plan around any date because vendors fit change dem, as CentOS users discover for December 2020.
Why your VPS image list dey look like this
Provider dey release the images wey customers request by name, and wey fit install unattended for im hypervisor. Na why almost every list dey start with Ubuntu LTS and Debian stable, add AlmaLinux or Rocky for people wey their software get certification against RHEL, then put Alpine, Arch and Fedora further down the page. Once you sabi wetin VPS be and how the image dey reach the disk, the pattern go clear: provider dey choose operating systems wey fit survive unattended install and remain supported longer than how long the average customer dey keep the server.
The choice commit you to more than package manager. E set the upgrade wey you go run in three years, and these ones dey differ completely by family. Debian and Ubuntu support in-place major upgrades. Red Hat family dey run dem through leapp. Arch no get upgrade because e no get version. Alpine own na to edit /etc/apk/repositories and run apk upgrade --available. The choice still set which software you fit install without adding third-party repository, who go release the patch when CVE (common vulnerabilities and exposures) entry land on something wey you dey run, and which init system and C library your future software go assume say e dey present.
Another effect dey wey easy to underrate. Most answers wey people write for internet dey assume Debian family path or Red Hat family path, so if you choose outside these two, you go dey translate instructions for the whole life of the machine. Choose the family wey release policy match how often you dey ready to touch the server, then keep am. To change packages on top easy. To change the distribution underneath dem mean say you must rebuild the box.
FAQ
Which Linux distribution family my server dey use?
Run cat /etc/os-release. The ID field dey show the distribution, while ID_LIKE dey show the family. So, Ubuntu machine go report ID_LIKE=debian, and AlmaLinux machine go report ID_LIKE="rhel centos fedora". The package manager na the other clue. apt and dpkg mean Debian family, dnf and rpm mean Red Hat family, apk mean Alpine, and pacman mean Arch.
CentOS still be free version of RHEL?
No. CentOS Linux 8, wey be the last rebuild with that name, end on 31 December 2021. CentOS Linux 7 reach end of life on 30 June 2024. The project wey remain, CentOS Stream, na the branch wey dem dey use build RHEL minor releases. So e dey receive changes before RHEL, no be after am. The free rebuilds wey take over the old role na AlmaLinux and Rocky Linux. Both get ten year windows.
Why Debian stable dey ship old version numbers like this?
Na because the version number dey freeze while the fixes dey continue. Debian dey backport security patches into the version wey e release, instead of importing newer upstream release. So package wey show 2.4.57-2+deb13u1 fit still carry fix wey dem publish last week. The suffix after the upstream version na the Debian revision, and apt changelog <package> dey list wetin enter inside am. If you judge Debian server security by the version numbers, you go always get wrong answer.
I suppose run rolling release like Arch for VPS?
Only if you go update am according to schedule. Rolling distribution assume say every machine go converge on the current package set. So, if you update one package with pacman -Sy foo, libraries fit no match again, and errors like cannot open shared object file fit show. Run pacman -Syu regularly, read the project news page before each run, and the system go stable. If you leave am for one year, the first upgrade go become the risky one.
Wetin immutable or atomic distribution really dey change?
E dey change when updates apply and how you fit undo dem. /usr dey mounted read only. An update dey stage as one complete new tree, then the switch happen when system reboot. The previous tree remain as boot entry for rollback. You get machine wey either fully update or no update at all, without half-applied state. You no fit install software by editing files directly again, so applications move enter containers or layered packages.