La nascita di GNU/Linux

Nonostante la mancanza di unità, il numero di sistemi UNIX continua a crescere. Alla metà degli anni ’90 ne sono stimati 5 milioni sparsi per il mondo. Versioni di UNIX girano su quasi ogni tipo di computer esistente, dal piccolo PC IBM ai grandi supercomputer come i Crays. Perché è facilmente adottabile su ogni nuovo computer. Perché consente un’alta performanza dei microprocessori. Perché il codice sorgente è facilmente leggibile. E’ inoltre molto popolare nelle comunità di ricerca perché gli studiosi di informatica amano la possibilità di modificare i propri tools.

Unix ha iniziato ad essere popolare anche nelle comunità commerciali. In larga parte questa popolarità è dovuta al crescente numero di persone che hanno studiato informatica usando sistemi Unix ed hanno cercato di usarlo anche per le applicazioni commerciali. Gli utenti che iniziano a familiarizzare con Unix diventano attaccatissimi all’apertura e alla flessibilità del sistema. Il modello client-server ha iniziato a diventare completamente popolare negli ambienti commerciali, e i sistemi Unix supportano ciò ottimamente.

computer-linux

Apple, Microsoft o il pinguino?

Nonostante la grande varietà di sistemi Unix nasce un nuovo standard che include interfacce, librerie, e caratteristiche di comportamento. Questo set standard è Posix, inizialmente creato da IEEE, ma adottato anche da ISO/IEC 9945. La gente ora può comprare vari tipi di macchina da vari venditori, ed avere comunque le stesse interfacce. Gli sforzi sono focalizzati nel mettere le stesse interfacce su VMS, Windows NT ed altre piattaforme diverse da Unix.

Richard Stallman, fisico ed hacker degli MIT AI Laboratories era da tempo impegnato nella creazione di utility Unix a codice sorgente libero. L’idea gli era venuta per colpa di una stampante: nel 1980 nel laboratorio di Intelligenza Artificiale del MIT una stampante laser Xerox era disponibile per tutti i dipendenti. Ognuno inviava le sue stampe ma spesso la gigantesca macchina si inceppava e la gente se ne poteva accorgere anche dopo ore. Così Stallman pensò di scrivere un codice per fare in modo che la stampante inviasse una email agli utenti in caso di inceppamento. Per farlo aveva bisogno del codice sorgente del programma che gestiva la stampante, ma Xerox si rifiutò categoricamente di fornirlo. Stallman si senti enormemente frustrato per non poter risolvere un problema così semplice solo per l’ottusità del fornitore della stampante. Negli anni maturò una profonda avversione per il codice proprietario e la convinzione che il software dovesse sempre essere libero per evitare che poche grandi e potenti aziende potessero prendere un controllo spropositato in ambito tecnologico. A seguito di questa vera e propria intuizione, nel 1983 diede vita al progetto GNU, un acronimo riodondante che sta per GNU is Not Unix, una serie di tool Unix ma, al contrario di Unix, liberi da licenze restrittina di esse, il potente e versatile editor Emacs, rivaleggiava con quello originale di Unix, VI, scatenando una guerra degli editor. In seguitò fondo anche la Free Software Foundation, attiva nella creazione e promozione del software libero.

Richard Stallman, creatore del progetto GNU e della Free Software Foundation

Nel 1991 Linus Torvalds (in alto), uno studente finlandese dell’università di Helsinki, si trovò difronte proprio al problema di voler lavorare a casa con il suo 386 e non avere i soldi per comprare Unix. All’inizio Torvalds usò il Minix, un piccolo Unix semplificato, scritto da Andrew Tenebaum per insegnare la progettazione di sistemi operativi. Comunque Tenebaum non permetteva ad altri di estendere il suo sistema operativo, così Linus si vide costretto a progettare un sostituto di Minix, dato che un compatibile Unix manipolabile gli serviva per la tesi di informatica.

Cominciò così a sviluppare il kernel di un sistema operativo che fosse in tutto e per tutto compatibile con Unix ma che potesse girare senza problemi su un PC basato su processore Intel 80386. Diede al kernel il suo nome, fuso con la X distintiva di Unix, e lo chiamò quindi “Linux”. Linus pubblicò i risultati ed il codice sorgente del kernel versione 0.01 con un famoso “post” su Usenet, agli albori di Internet, il 17 settembre 1991:

“Hello netlanders, a causa di un progetto su cui sto lavorando (in minix), sono interessato alle definizioni posix standard. Qualcuno potrebbe per favore indirizzarmi ad un formato (preferibilmente) leggibile da macchina delle ultime regole Posix? Siti Ftp andrebbero benissimo”. Torvalds giustificherà poi la folle impresa con queste parole: “Non potevo permettermi i sistemi operativi di allora e non volevo usare il DOS o Windows – Neanche lo so, ma esisteva già Windows allora?”.

Linus Torvalds, creatore del kerner Linux

Programmatori da tutto il mondo, entusiasti del progetto, chiesero di partecipare. scaricarono il codice e contribuirono con le loro variazioni, da sottoporre poi a Linus Torvalds per la pubblicazione ufficiale. Il 5 ottobre, con un altro famoso post su Usenet, uscì la prima versione del kernel Linux denominata 0.02. A gennaio la 0.12 è la prima versione stabile e utilizzabile.

Questo evento non poteva fare a meno di attirare l’attenzione della Free Software Foundation di Richard Stallman. Il kernel Linux era facilmente combinabile col materiale GNU della FSF ed altri componenti, come alcuni dallo Unix BSD ed il software del MIT X-Windows. Così si poté ottenere un sistema operativo molto utile e liberamente modificabile: GNU/Linux per la FSF, semplicemente Linux per Linus Torvalds, era quindi un sistema a 32 bit, con vero multitasking, networking avanzato, sicurezza elevata, forte stabilità e solido filesystem, del tutto gratuito e scaricabile dalla rete.

computer-slackCosì alcuni appassionati cominciarono a scaricare il kernel e ad aggiungergli software GNU a scelta. Il primo fu Peter MacDonald che assemblò così la prima distribuzione Linux, chiamata Softlanding Linux System (SLS). In quel periodo, Patrick Volkerding, allora studente, iniziò ad apportare delle modifiche a SLS e a correggere alcuni bug; alla fine decise di creare una sua distribuzione basata sulla SLS chiamata Slackware, il cui lancio fu annunciato il 16 luglio 1993 sul newsgroup comp.os.linux. Data la direzione di sviluppo impopolare presa da SLS, Slackware sostituì velocemente la SLS diventando la distribuzione più popolare.

computer-murdock

Ian Murdock, fondatore di Debian Linux

computer-debianIn quello stesso periodo Ian Murdock, un dipendente della Pixar, la compagnia di animazione grafica fondata da Steve Jobs, non soddisfatto dalla SLS, dopo aver applicato delle correzioni alla SLS stessa, decise di creare una distribuzione alternativa alla SLS partendo da zero ed utilizzando solo Software Libero; chiamò la sua distribuzione Debian e ne annunciò lo sviluppo il 16 agosto 1993 su un newsgroup.

Debian deriva il suo nome da quello dell’ideatore del progetto, Ian Murdock (in alto), e da quello di sua moglie, Debra. Debian GNU/Linux, è basato sul kernel Linux con molte utilità di base del sistema operativo del progetto GNU.

Debian è conosciuta per la sua aderenza alle filosofie di GNU e del software libero, le rigide politiche riguardo alla qualità dei pacchetti e le release, il modo aperto di sviluppare e testare il software e la libertà di scelta concessa all’utente. Il Debian Project ha formalizzato con i suoi utenti questi impegni attraverso il Contratto Sociale Debian e le Linee Guida Debian per il Software Libero.

computer-suseAlla fine del 1992, Hubert Mantel, Roland Dyroff, Burchard Steinbild e Thomas Fehr avevano fondato in Germania la SuSE, acronimo di Software- und System-Entwicklung (dal tedesco Sviluppo di software e sistemi), come gruppo di consultazione Unix, che, tra le altre cose, rilasciava regolarmente pacchetti software che includevano SLS e Slackware, e pubblicava manuali Unix e Linux. Nel 1994 rilasciarono la prima distribuzione Linux su CD di SLS/Slackware, sotto il nome di SuSE Linux 1.0.

Il software GNU che correda il kernel Linux è strutturato in file eseguibili e una gran numero di altri file librerie e file di uso comune che vengono detti “dipendenze” del programma e vanno installate una per una insieme al software che si vuole utilizzare.computer-redhat

Il 3 novembre 1994 fu rilasciata la prima versione della distribuzione Red Hat. Per la gestione dei pacchetti software la Red Hat ideò un sistema che fece standard: RPM (Redhat Packaging Manager). Il problema delle dipendenze era affrontabile più facilmente dagli utenti Red Hat. SuSE fu tra le prime ad abbracciare questa filosofia e molte altre distribuzioni sarebbero poi nate a partire dalla Red Hat.

Quello stesso anno vide la nascita della prima versione definitiva del kernel Linux 1.0. Linux, che resta Copyright di Linus Torvalds, diventa ufficialmente un software aperto, abbracciando in pieno la General Public License (GPL) del movimento Free Software di Stallman. Grazie all’aumento esponenziale dell’interesse da parte della comunità mondiale nascono i primi LUGs (Linux User Groups), ormai diffusi anche in Italia.

Judd Vinet, un programmatore canadese, nei primi mesi del 2001 decise di creare una nuova distribuzione, chiamata Arch Linux, ispirandosi a Slackware, Polish Linux Distribution e soprattutto CRUX Linux. A questo progetto aggiunse un sistema di gestione dei pacchetti, che mancava alle distro precedentemente nominate, di modo che si potesse aggiungere, togliere ed eliminare i programmi sul PC con facilità. Tale programma venne chiamato Pacman, tuttora utilizzato nella distribuzione e nelle sue derivate.

Verso la fine del 2007, Judd Vinet si dimise da leader del team di sviluppo di Arch Linux e passò il testimone al programmatore statunitense Aaron Griffin, soprannominato Phrakture.

Nell’aprile del 2004, Mark Shuttleworth, il fondatore sudafricano della compagnia di sicurezza digitale Thawte, poi venduta a Verisign, riunì nella Canonical Ltd un gruppo di programmatori per creare una nuova distribuzione Linux. Il progetto prevedeva, tra i punti chiave, che:

  • ogni utente deve avere la possibilità di eseguire, studiare, modificare, personalizzare e distribuire il proprio sistema operativo senza dover pagare costi di licenza;
  • ogni utente deve poter usare il proprio sistema operativo nella propria lingua;
  • anche se disabile l’utente deve essere in grado di operare con il proprio computer.

Il progetto doveva essere realizzato tramite:

una forte impronta Debian (una fork temporanea di questa distribuzione);

  • uso del Desktop environment GNOME;
  • delle pubblicazioni semestrali;
  • l’uso di software libero.
computer-ubuntu

Ubuntu: dagli uomini per gli uomini

Era nata Ubuntu, distribuzione progettata per fornire un’interfaccia semplice, intuitiva e allo stesso tempo completa e potente. I punti di forza di questa distribuzione sono l’estrema semplicità di utilizzo, l’ottimo riconoscimento e supporto dell’hardware, il vasto parco software costantemente aggiornato e una serie di strumenti di gestione grafici che la rendono improntata verso l’ambiente desktop. È corredata da un’ampia gamma di applicazioni libere ed è aggiornata con una nuova versione ogni 6 mesi. Il tutto in completa gratuità. Ubuntu è un’antica parola africana (zulu, ma anche xhosa) che significa “umanità verso gli altri”, oppure “io sono ciò che sono per merito di ciò che siamo tutti”.

Le distribuzioni di Linux sono tantissime. Molte derivano dalle prima grandi come Debian, Slackware e Archlinux. In genere tentano un approccio più semplice all’adozione del sistema operativo. Come Ubuntu è basata su Debian, Fedora è basata su Red Hat, Arcolinux e Manjaro su Archlinux. Debian conta un gran numero di derivate di successo come Mint Linux (basata su Ubuntu), Pop! OS Linux, MX Linux tra le più diffuse. Ubuntu è stata la distribuzione più diffusa per un decennio. Una serie di scelte tecniche poco lungimiranti le hanno fatto perdere terreno: molte distribuzioni che usavano l’interfaccia grafica Gnome, nel 2011 furono spiazzate dall’uscita della versione 3 che era un deciso passo indietro. Ubuntu ad oggi esce sempre con una Gnome vecchia di 6 mesi ma è sempre una distribuzione di primo piano. Altre distribuzioni come Mint hanno deciso di sviluppare le proprie interfacce grafiche come ad esempio Cinnamon.

Ad oggi tra le più scaricate spicca Mint Linux, una derivata di Ubuntu con un desktop basato su Cinnamon pensato per favorire il passaggio da Windows (mentre Elementary OS Linux mima molto il desktop di Mac OSX). Ruba terreno ad Ubunto anche Fedora Linux, la distribuzione derivata da Red Hat. I più esperti si ritrovano a passare da distribuzioni come Ubuntu e altre derivate Debian ad Archlinux e derivate (Arcolinux e Manjaro in primis) che guadagnano sempre più terreno.

Oggi Linux è il sistema operativo più usato al mondo, installato sul 95% (e oltre) dei server internet nelle versioni Debian e Arch, nonché su tutti gli smartphone che utilizzano Android, che ha un kernel Linux. Solo in ambito desktop Windows la fa ancora da padrone, seguito a grande distanza da Mac OSX, mentre Linux ha percentuali irrisorie.