Distribuzioni GNU/Linux

Gen 14
2003

Il concetto di distribuzione è strettamente legato al sistema operativo Linux, e dipende intrinsecamente dal suo modello di sviluppo. Gli altri sistemi operativi vengono in genere distribuiti da chi li sviluppa, siano essi dei sistemi commerciali come Windows, Macintosh e i vari Unix proprietari, oppure dei sistemi aperti come i vari *BSD, ed hanno quindi una unica distribuzione. Nello sviluppo di Linux invece vengono coinvolti tre diversi soggetti.

Il primo soggetto è il team che sviluppa il kernel di Linux, il cuore del sistema operativo, il programma che si occupa di gestire i vari processi e di interfacciarli all’hardware installato sulla macchina, ma che da solo non potrebbe mai essere un sistema operativo.
Il nome di questo programma è appunto Linux, sebbene nel lessico comune questa denominazione venga utilizzata per indicare l’intero sistema operativo.
Il secondo soggetto è rappresentato da vari sviluppatori, in testa a tutti il progetto GNU, i quali si occupano di scrivere il software necessario perchè si possa utilizzare la macchina. Questo software si compone dei vari filesystem per l’organizzazione dei dati sui dischi, delle shell per l’interazione con la macchina, dei compilatori, delle librerie di supporto, dei vari comandi per effettuare operazioni sui file, di programmi di utilità e interfacce grafiche.
GNU ha il peso maggiore tra i vari team di sviluppo perchè si occupa di sviluppare le librerie di base che consentono di dare una certa omogeneità all’intero sistema, includendovi all’interno anche il kernel ideato da Linus Torvalds, anche se in effetti l’inclusione del kernel Linux avvenne solo in un secondo tempo. Potremmo tranquillamente affermare che il vero padre del sistema operativo sia proprio il progetto GNU, e non a caso Richard Stallman, ideatore e leader del progetto, non esita a rivendicarlo ricordando a tutti che quando ci si riferisce al sistema operativo nella sua globalità, non quindi al solo kernel, occorre usare il termine “GNU/Linux” (e direi che non ha neanche tanto torto :-).

A questo punto il sistema operativo potrebbe essere completo, dispone di tutti i programmi che ci servono per poter lavorare, abbiamo editor di testo, programmi di disegno, suite per l’ufficio e, perchè no, giochi e passatempi, quindi possiamo subito accingerci alla sua installazione. Facile a dirsi, ma all’atto pratico ci si presentano subito i primi scogli.
In primo luogo tutto il software che abbiamo menzionato è distribuito in formato sorgente. Questo significa che dobbiamo compilare uno ad uno tutti i programmi, dal kernel all’ultimo tool, e questa operazione, oltre che presumere una certa competenza ed una dimestichezza con i vari compilatori a disposizione, ci porterebbe via un mare di tempo. In seguito, una volta che avremmo compilato tutto e messo ogni cosa al suo posto, ci troveremmo a dover configurare il sistema, scrivendo i file di configurazione per l’inizializzazione del sistema e per tutti i programmi che abbiamo installato, ed anche questa operazione ci porterebbe via parecchio tempo.

É a questo punto che ci viene in aiuto il terzo soggetto impegnato nello sviluppo di GNU/Linux: il distributore.
In principio fu Slackware. Già ai tempi in cui il sistema operativo cominciava ad assumere le proprie sembianze si presentò il problema di dare a chi avesse voluto installarlo sulla propria macchina gli strumenti adeguati per farlo, ed il team capitanato da Patrick Volkerding si occupò di risolverlo. Venne creato un sistema che chiunque (o quasi) avrebbe potuto installare. Era sufficiente effettuare l’avvio della macchina con l’apposito floppy di installazione e seguire la procedura rispondendo a qualche semplice domanda. Inserendo in successione i dischetti il programma di installazione si sarebbe occupato di copiare sul disco fisso i pacchetti precompilati dei programmi che si avrebbe richiesto, comprensivi dei relativi file di configurazione già redatti, ed infine si sarebbe occupato di installare il loader che avrebbe permesso il caricamento del sistema operativo “Slackware GNU/Linux” (che nel frattempo ha allungato ulteriormente il suo nome).

Successivamente si assistette al moltiplicarsi delle distribuzioni di GNU/Linux, per la maggior parte ad opera di società commerciali che vedevano nel software libero una concreta possibilità di guadagno. L’azienda che riuscì a catalizzare la maggior parte del mercato del software libero fu Red Hat, ideatrice tra le altre cose del sistema di gestione dei pacchetti software chiamato Red hat Package Manager (rpm). I pacchetti rpm potevano essere installati mediante un apposito tool che si preoccupava di vedere se nel sistema fosse già installata una versione diversa di quel particolare programma, se il funzionamento del programma fosse subordinato alla presenza di altri pacchetti come librerie e ulteriori programmi, e se l’installazione poteva dar luogo a conflitti tra diversi programmi che potessero pregiudicare il funzionamento dello stesso, se non addirittura il funzionamento dell’intero sistema.

Ma non erano solo le aziende ad interessarsi a GNU/Linux. Intorno al software libero nacque un vero e proprio movimento ideologico, ed alcuni seguaci di questo movimento stabilirono alcuni concetti fondamentali per la classificazione del software libero, coniando di fatto la definizione “Open Source”: si trattava del gruppo Debian.
La distribuzione “Debian GNU/Linux” si contraddistingue dalle altre perchè sviluppata appunto da un’intera comunità sparsa in tutto il pianeta, e per la particolare attenzione che viene prestata alla classificazione del software in base al tipo di licenza che lo accompagna ed in base al livello di stabilità. Anche Debian sviluppa un proprio sistema di pacchettizzazione del software, per molti versi più avanzato di quello di Red Hat, per mezzo del quale è possibile tenere costantemente aggiornato il sistema operativo senza bisogno di fare ricorso ad aggiornamenti radicali ogni volta che viene rilasciata una nuova versione.

In seguito altre aziende seguirono le orme di Red Hat sfornando ognuna la propria distribuzione, sviluppando la propria interfaccia grafica per l’installazione e i propri tool per agevolare la prima configurazione del sistema e la sua successiva manutenzione. Al susseguirsi delle versioni il software a corredo di ogni distribuzione migliorava costantemente, e l’obbiettivo che tutti cercavano di raggiungere era principalmente uno: realizzare un sistema con delle interfacce amichevoli e delle procedure di installazione sempre più automatizzate, in grado di rilevare l’hardware installato sulla macchina ed installare gli appositi driver, in modo che qualunque utente si fosse avvicinato al mondo del software libero non avrebbe avuto particolari difficoltà nella sua installazione e nella sua gestione.
Non vi è ombra di dubbio che il risultato sia stato tutt’altro che deludente. Tutte le moderne distribuzioni sono facilmente installabili, e qualunque utente alle prime armi non troverà nessuna difficoltà ad effettuare l’installazione, o quantomeno non troverà più difficoltà di quelle che si possono incontrare anche installando i più blasonati sistemi operativi commerciali.

Ogni distribuzione differisce dalle altre per molti aspetti quali la struttura del filesystem, la quantità e varietà del software fornito a corredo, la tipologia di utenza alla quale si orienta. In questo senso noteremo che alcune saranno più orientate al mercato dei server come Red Hat e Debian, mentre altre saranno più orientate al desktop come Mandrake e Suse, ma tutte avranno lo stesso sistema operativo alla base e di tutte, come stabilito dalla licenza GPL, saranno disponibili i sorgenti.

I commenti sono chiusi.