La seguente configurazione è probabilmente la più piccola possibile su cui Linux può lavorare: 386SX/16, RAM 1 Mb, floppy 1.44 Mb o 1.2 Mb, qualsiasi scheda video (+ ovviamente tastiera, monitor e così via). Questo dovrebbe permettere di avviare e provare se funziona completamente nella macchina, ma non si potrebbe fare niente di utile. Vedere http://rsphy1.anu.edu.au/~gpg109/mem.html per la minima configurazione Linux.
Per poter fare qualcosa, si dovrebbe avere un po' di spazio su disco, da 5 a 10 Mb dovrebbero bastare per una configurazione molto limitata (con solo i programmi più importanti e forse una o due piccole applicazioni installate, come programmi terminali). Questo è molto limitante e scomodo e le applicazioni non hanno abbastanza spazio per lavorare. Generalmente non è raccomandato salvo per provare se funziona e per poter vantarsi di programmi di minimi requisiti.
Se si eseguono programmi di calcolo intensivo, come gcc, X e TeX, ci vorrebbe un processore veloce rispetto a un 386SX/16, ma ne dovrebbe bastare uno qualsiasi se si ha pazienza.
In pratica sono necessari almeno 4 Mb di RAM se non si usa X, e 8 Mb con X. Inoltre, se si vuole avere diversi utenti contemporaneamente o eseguire parecchi programmi grossi (ad esempio dei compilatori) insieme, è meglio avere più di 4 Mb di memoria. Tutto funzionerebbe anche con poca memoria (dovrebbe lavorare anche con 2 Mb), ma userebbe memoria virtuale (usando il disco fisso come memoria lenta) e sarebbe talmente lento da non essere utilizzabile. Se usate molti programmi contemporaneamente, 16 Mb ridurranno lo swap in modo considerevole. Se non volete che la macchina usi swap in condizioni di carico normale, 32 Mb probabilmente bastano. Certo, se avete applicazioni che fanno largo uso di memoria, ne servono di più.
La dimensione del disco fisso necessario dipende da quale software vuolete installare. Le utility Unix, le shell ed i programmi di amministrazione del sistema normalmente usati, dovrebbero entrare in 10 Mb, con un piccolo spazio per i file utente. Per un sistema più completo, prelevate Red Hat, Debian, Slackware, o un'altra distribuzione e prevedete di disporre da 60 a 300 Mb, a seconda di quale distribuzione prelevate. Aggiungete qualunque spazio si voglia riservare per i file utenti. Con i prezzi attuali dei dischi fissi non ha senso acquistarne uno troppo piccolo. Prendetene uno da almeno 500 Mb, preferibilmente da 1 Gb o più, e non ve ne pentirete.
Aggiungete altra memoria, altri dischi fissi, un processore veloce e altra roba a seconda delle necessità, se pensate di andare oltre un utilizzo semplice. In generale, con Linux l'aggiunta di memoria crea una grande differenza, al contrario che con il DOS, dove non è molto sentita a causa del limite di 640 Kb, che non esiste in Linux.
Qualsiasi che esegua programmi in modalità 386 protetta (tutti i modelli di 386, 486, 586 e 686 dovrebbero andare). 286 e prededenti potrebbero essere supportati un giorno su un kernel più piccolo chiamato ELKS, ma non aspettatevi le stesse caratteristiche. Una versione per le CPU 680x0 (per x = 2 con MMU esterno, 3, 4 e 6) che funziona su Amiga ed Atari può essere essere trovata a tsx-11.mit.edu nella directory 680x0. Molte Alpha sono supportate. Alcune Sparc sono adesso supportate. È già stato portato su architetture PowerPC, ARM e MIPS. Maggiori dettagli sono disponibili altrove.
Bus ISA o EISA. Il supporto MCA (soprattutto PS/2 originali) è incompleto ma migliora (vedi sopra). Local bus (VLB e PCI) funzionano. Linux è molto più esigente con l'hardware rispetto a DOS, Windows e molti sistemi operativi. Questo significa che alcuni hardware particolari che non danno problemi con sistemi operativi poco esigenti possono dare problemi quando eseguono Linux. Linux è un eccellente tester della memoria...
Teoricamente fino a 1 Gb; di più su piattaforme a 64-bit. Alcune persone (compreso Linus) hanno notato che l'aggiunta di RAM senza aggiungere contemporaneamente altra cache ha rallentato estremamente la loro macchina, così se aggiungendo memoria notate che la vostra macchina rallenta, provate ad aggiungere cache. Alcune macchine possono gestire in cache solo un certo ammontare di memoria, indipendentemente dalla quantità di RAM installata (64 MB è la quantità per schede più comuni). Sopra i 64 Mb si richiede un parametro al momento dell'avvio, in quanto il BIOS non può riportare più di 64 Mb, in quanto progettato così.
Sono supportati drive AT generici (EIDE, IDE, controller HD a 16 bit con MFM o RLL o ESDI), come dischi fissi SCSI e CD-ROM, con adattatori SCSI supportati. Sono supportati inoltre controller XT generici (8 bit con MFM o RLL). Adattatori SCSI supportati: Advansys, Adaptec 1542, 1522, 1740 e serie 27xx e 29xx (con alcune eccezioni), controller Buslogic MultiMaster (il supporto per Flashpoint è in fase di test), controller basati sul NCR53c810, DTP, Qlogic ISP e FAS, Segate ST-01 e ST-02, Future Domain serie TMC-88x (o qualsiasi scheda basata sul chip TMC950) e TMC1660/1680, Ultrastor 14F, 24F e 34F, Western Digital wd7000 e altri. Sono inoltre supportati nastri SCSI e alcuni QIC-02 e QIC-80. Molti dispositivi CD-ROM sono supportati, inclusi Matsushita/Panasonic, Mitsumi, Sony, Soundblaster, Toshiba, ATAPI e altri. Per modelli precisi, controllare il file Hardware-HOWTO.
VGA, EGA, CGA o Hercules (e compatibili) lavorano in modo testo. Per grafica e X esiste il supporto per (almeno) normali VGA, alcune schede super VGA (molte delle schede basate su ET3000, ET4000, Paradise, e alcuni chipsets Trident), S3, 8514/A, ATI MACH8, ATI MACH32 e Hercules. (Linux usa il server Xfree86 per determinare quali schede sono supportate. Una lista completa delle schede supportate riempie da sola più di una pagina.)
Il supporto Ethernet include 3COM 503/509/579/589 (501/505/507 sono supportate ma non raccomandate), AT&T GIS (neé NCR) WaveLAN, molte schede basate su WD8390 e WD80x3, NE1000/2000 e compatibili, AC3200, Apricot 82596, AT1700, ATP, DE425/434/435/500, D-Link DE-600/620, DEPCA, DE100/101, DE200/201/202 Turbo, DE210, DE422, Cabletron E2100 (non raccomandata), Intel EtherExpress (non raccomandata), DEC EtherWORKS 3, HP LAN, HP PCLAN/plus, molte schede basate su AMD LANCE, NI5210, ni6510, SMC Ultra, DEC 21040 (tulip), ethernet Zenith Z-Note. Schede Zircom e Cabletron diverse dalle E2100 non sono supportate, a causa del fabbricante che non rende free le informazioni sulla programmazione.
Il supporto FDDI comprende attualmente le schede DEFxx dalla DEC.
Il supporto reti Point-to-Point include PPP, SLIP, CSLIP e PLIP.
Molte schede basate su UART 16450 e 16550, incluso AST Fourport, la Usenet Serial Card II e altre. Supportate schede intelligenti incluse la serie Cyclades Cyclom (supportate dal fabbricante), serie Comtrol Rocketport (supportate dal fabbricante), Stallion (molte schede, supportate dal fabbricante), e Digi (alcune schede, non supportate dal fabbricante). Alcune ISDN, frame relay e hardware leased line è supportato.
SoundBlaster, ProAudio Spectrum 16, Gravis Ultrasound, parecchi tipi (forse tutti?) di mouse (Microsoft, Logitech, PS/2).