In april 1991 begon Linus Torvalds, toen 21 jaar oud, te werken aan enkele eenvoudige ideeën voor een besturingssysteem. Op 25 augustus 1991 postte Torvalds op comp.os.minix:
| " | Ik ben bezig met een (gratis) besturingssysteem (gewoon een hobby, wordt niet groot en professioneel zoals gnu) voor 386(486) AT klonen. Dit staat al sinds april in de steigers, en begint nu klaar te raken. Ik wil graag feedback over dingen die mensen wel of niet leuk vinden aan minix, aangezien mijn OS er enigszins op lijkt (dezelfde fysieke indeling van het bestandssysteem (om praktische redenen) en andere dingen). | " |
Na het bericht droegen veel mensen code bij aan het project. In september 1991 werd Linux versie 0.01 uitgebracht. Deze had 10.239 regels code. In oktober 1991 werd Linux versie 0.02 uitgebracht.
Er werd een nieuwsgroep alt.os.linux gestart en op 19 januari 1992 werd het eerste bericht op alt.os.linux geplaatst. Op 31 maart 1992 werd alt.os.linux comp.os.linux.
Het X Window System werd al snel verplaatst naar Linux. In maart 1992 was Linux versie 0.95 de eerste die in staat was om X te draaien. Deze grote versienummer sprong (van 0.1x naar 0.9x) kwam voort uit het gevoel dat er binnenkort een versie 1.0 zou verschijnen zonder grote missende delen.
Op 14 maart 1994 werd Linux 1.0.0 uitgebracht, met 176.250 regels code. In maart 1995 werd Linux 1.2.0 uitgebracht (310.950 regels code).
Linus besloot op 9 mei 1996 om Tux de pinguïn als mascotte voor Linux te nemen.
Versie 2 van Linux, uitgebracht op 9 juni 1996, was een mijlpaal. De sterke ontwikkeling ging door:
- 25 januari 1999 - Linux 2.2.0 werd uitgebracht (1.800.847 regels code).
- 18 december 1999 - IBM mainframe patches voor 2.2.13 werden gepubliceerd, waardoor Linux kan worden gebruikt op enterprise-class machines.
- 4 januari 2001 - Linux 2.4.0 werd uitgebracht (3.377.902 regels code).
- 17 december 2003 - Linux 2.6.0 werd uitgebracht (5.929.913 regels code).
- 16 april 2008 - Linux 2.6.25 is uitgebracht (9.232.484 regels code).
- 31 mei 2019 - Linux 5.1.6 is uitgebracht.
Momenteel wordt om de 2 3/4 maanden een nieuwe kernelversie uitgebracht.