A Linux fejlesztésének kezdetén Linus Torvalds a 80386 processzor védett módú (protected mode), feladat-váltó (task-switching) lehetőségeivel szeretett volna megismerkedni. Ez kb. 1991 nyarának elején lehetett. A pontos dátumra maga a szerző sem emlékszik, de amikor egyszer megkérdezték, mikor van a Linux születésnapja, azt mondta, hogy nem tudja megmondani, de egy e-mail tanúsága szerint július 3-án már a POSIX szabvány után érdeklődött, így akkor már biztos futott az alaprendszer.
A program fejlesztése egy korábbi PC-s UNIX, a Minix alatt történt, eleinte assembly-ben. Az első fázisban kialakuló 0.01-es változat még semmire sem volt használható, csak egy lépcső volt a továbbfejlesztéshez. Linus Torvalds így ír erről:
,,Két hónap telt el az alaprendszer felállításáig, de utána rövidesen lett egy lemezmeghajtóm (amely súlyos programhibákkal volt tele, de az én gépemen történetesen működött) és egy kis fájlrendszerem. Körülbelül ekkor [1991. augusztusának végén] tettem közzé a 0.01-es változatot: nem volt kicsinosítva, nem volt floppymeghajtója, és nem sok mindent tudott csinálni. Azt hiszem, soha senki nem fordította le ezt a változatot. De akkor már beindultam, és nem akartam addig megállni, amíg túl nem haladom a Minixet.''
Amikor Linus áttért a C nyelvre, a fejlesztés lényegesen gyorsabbá vált, és olyan nagyratörő tervek fogalmazódtak meg, hogy valaha le lehessen fordítani a GNU C fordítóját Linux alatt. (Ma már csak csodálkozni lehet azon, hogy 1991-ben ez volt a nagy álom, és azóta hol tart a rendszer.)
Ez a legelső változat még nem volt használható: csak Minix alatt lehetett lefordítani, és semmi hasznos funkciója nem volt azon kívül, hogy írója megismerkedett a processzorral.
1991. október 5-én hirdette meg Linus az első ,,hivatalos'', 0.02-es Linux-ot az Interneten. Ekkor már néhány alapprogram futott a rendszeren (pl. a GNU gcc nevű C fordítója, valamint a bash burokprogram), így már el lehetett kezdeni használni a rendszert. Ekkor nem is a rendszer használhatóságának növelése volt a fő cél, hanem a rendszermag fejlesztése. Ezért ekkor nem készültek dokumentációk, installációs csomagok, stb. A Linux ekkor még csak a megszállott hackereknek készült.
Linus ekkor elhatározta, hogy az Interneten keresztül bevonja a fejlesztésbe a szabad kapacitással rendelkező programozókat, és a következő hirdetményt tette közzé a comp.os.minix hírcsoportban:
,,Sóvárogsz a Minix-1.1 szép napjai után, amikor a férfiak igazi férfiak voltak, és mindenki maga írta a saját eszközmeghajtóját? Egy szép project nélkül vagy, és épp fened a fogad egy operációs rendszerre, amit igényeidnek megfelelően alakíthatsz? Frusztrálónak találod, ha minden működik Minix alatt? ...Akkor ez a levél lehet, hogy pont neked szól.
Ahogy egy hónapja említettem, egy szabad Minix-szerűségen dolgozom AT-386 számítógépre. Végülis elérkeztem egy olyan állapotra, amikor ez egyáltalán használható (bár ez függhet attól, mit akarsz), és a program forráskódját szélesebb körben tervezem szétosztani. Ez még csak a 0.02-es változat, de sikeresen futtattam a bash, gcc, gnu-make, gnu-sed, compress, stb. programokat alatta.''
Megjegyzendő, hogy ekkor, és még egy darabig a Linux erősen kapcsolódott a Minix-hez: önállóan nem is létezett, csak alatta lehetett lefordítani, futtatni, továbbá az Interneten is a Minix hírcsoportjában folyt a Linux-ról szóló tárgyalás.
A 0.03-as verzió két-három hét alatt megszületett, majd 1991. decemberében Linus kibocsátotta a 0.10-eset is. Ez az ugrás a számozásban azt tükrözte, hogy jelentősen megnőtt a Linux alatt futtatható alkalmazások száma, de a Linux még mindig nem volt önálló, szerzője szerint is ,,egy hacker által hackereknek írt'' rendszerről van szó, így a rendszernek csak fejlesztői vannak, felhasználói nem.