.:: Informatica ::.
OPEN SOURCE
LA STORIA DELL'OPEN SOURCE
La genesi del software aperto
Le origini di quello che solo da pochi anni viene chiamato "Open Source" risalgono agli
albori dell'informatica, o meglio ai tempi nei quali per la prima volta fu possibile ed aveva
una sua utilità condividere il codice tra persone senza che esistesse alcun legame
contrattuale tra di loro. A partire dagli anni Cinquanta, e soprattutto negli anni Sessanta, è
stato possibile riutilizzare lo stesso codice e distribuirlo anche se in modo oggi ritenuto
piuttosto artigianale, ovvero con nastri e schede perforate. Questo fenomeno diventò
evidente soprattutto quando si affermò il vantaggio di usare una stessa porzione di
codice, il che presupponeva di avere macchine uguali e problemi simili.
Negli anni Quaranta e Cinquanta ciò non succedeva spesso, in quanto esistevano pochi
esemplari di computer uguali, e le poche organizzazioni che li utilizzavano avevano
problemi non standard. Le conoscenze di programmazione erano più simili alle
conoscenze scientifiche e pertanto liberamente condivisibili, che a conoscenze
tecnologiche delle quali appropriarsi per trarre profitto.
Inoltre, fino a tutti gli anni Settanta, anche se in misura decrescente, la componente
principale e costosa di un computer era l'hardware, il quale era comunque inutile in
assenza di software. Da ciò la scelta dei produttori di hardware di vendere il loro prodotto
accompagnato da più software possibile e di facilitarne la diffusione, fenomeno che
rendeva più utili le loro macchine e dunque più concorrenziali. Il software, tra l'altro, non
poteva avvantaggiare la concorrenza in quanto funzionava solo su un preciso tipo di
computer e non su altri, neanche dello stesso produttore.
L'introduzione dei sistemi operativi rese i programmi sempre più portabili, in quanto lo
stesso sistema operativo veniva offerto dal produttore di diversi modelli di hardware. La
presenza di sistemi operativi funzionanti per macchine di differenti produttori hardware
ampliava ulteriormente le possibilità di usare lo stesso codice in modo relativamente
indipendente dall'hardware usato. Uno di questi sistemi operativi era Unix, iniziato nel
1969 come progetto all'interno di un'impresa delle telecomunicazioni, la AT&T. Una
-1-
.:: Informatica ::.
famosa causa antitrust contro la AT&T le vietò di entrare nel settore dell'informatica.
Questo fece sì che Unix venisse distribuito ad un prezzo simbolico a buona parte delle
istituzioni universitarie, le quali si ritrovarono ad avere una piattaforma comune, ma
senza alcun supporto da parte del produttore. Si creò spontaneamente una rete di
collaborazioni attorno al codice di questo sistema operativo, coordinata dall'Università di
Berkeley, da dove sarebbe poi uscita la versione BSD di Unix, che diventa da un lato un
centro di sviluppo ed innovazione, dall'altro è la base di partenza per numerosi forking.
La nascita del software proprietario
L'utilità principale delle licenze restrittive consiste nella possibilità di rivendere un
programma più volte, se necessario con alcune modifiche purché non rilevanti. Questo
presuppone che esistano clienti diversi con esigenze simili, oltre che l'esistenza di più
computer sul quale poter far eseguire il programma. Queste condizioni cominciano a
determinarsi negli anni Sessanta, grazie al fatto che esistevano un maggior numero di
utilizzatori con esigenze standardizzabili come lo erano quelle delle organizzazioni
economiche nell'area della contabilità, la logistica o delle statistiche.
La suddivisione della AT&T in 26 società, le cosiddette BabyBell, permise alla AT&T di
usare logiche prettamente commerciali nella distribuzione del suo sistema operativo
UNIX, innalzando notevolmente i costi delle licenze e impedendo la pratica delle patch.
Nel 1982 cominciò pure la storia delle diverse versioni commerciali di Unix, legate ai
singoli produttori di hardware, i quali, differenziando anche solo di poco la propria
versione, riuscivano così a legare a sé i clienti acquisiti, in quanto programmi scritti per
una specifica versione di Unix non funzionavano solitamente su versioni concorrenti.
Gli anni Ottanta: Stallman, la Free Software Foundation e l'innovazione dei PC
Negli anni Ottanta, si diffuse la pratica di non rendere disponibili i sorgenti dei
programmi firmando accordi di non divulgazione (in inglese: NDA, ovvero NonDisclosure Agreement).
In questo contesto Stallman si rifiutò di lavorare per una società privata e fondò nel 1985
la Free Software Foundation (FSF), un'organizzazione senza fini di lucro per lo sviluppo e
la distribuzione di software libero. In particolare lo sviluppo di un sistema operativo
-2-
.:: Informatica ::.
completo, compatibile con UNIX, ma distribuito con una licenza permissiva, con tutti gli
strumenti necessari altrettanto liberi. Si tratta del progetto nato l'anno precedente, ovvero
GNU, acronimo ricorsivo per contemporaneamente collegarsi e distinguersi da UNIX,
ovvero "GNU's Not UNIX". «L'obiettivo principale di GNU era essere software libero.
Anche se GNU non avesse avuto alcun vantaggio tecnico su UNIX, avrebbe avuto sia un
vantaggio sociale, permettendo agli utenti di cooperare, sia un vantaggio etico,
rispettando la loro libertà.»
Tale progetto, finanziato dalla FSF, venne pertanto prodotto da programmatori
appositamente stipendiati.
Nacque così la GNU General Public License (GPL), il preambolo del cui manifesto
comincia con: «Le licenze per la maggioranza dei programmi hanno lo scopo di togliere
all'utente la libertà di condividerlo e di modificarlo. Al contrario, la GPL è intesa a
garantire la libertà di condividere e modificare il free software, al fine di assicurare che i
programmi siano "liberi" per tutti i loro utenti.»
Tuttavia, all'inizio degli anni Novanta, il progetto GNU non aveva ancora raggiunto il suo
obiettivo principale, mancando di completare il kernel del suo sistema operativo (HURD).
Per sopperire alla mancanza del kernel William e Lynne Jolitz riuscirono a fare il porting
di UNIX BSD su piattaforma Intel 386 nel 1991, e Linus Torvalds (anch'esso nel 1991 e su
piattaforma Intel 80386) iniziò lo sviluppo del kernel Linux, cresciuto poi con il contributo
di migliaia di programmatori volontari sparsi per il mondo.
Gli anni Novanta: Internet, Linux e la Open Source Definition
Benché Internet avesse visto la luce già negli anni Settanta, è soltanto agli inizi degli anni
Novanta, con la diffusione del protocollo HTTP e la nascita dei primi browser, che
Internet cominciò ad essere diffuso prima in ambito accademico e poi in modo sempre più
capillare anche tra semplici privati.
Gli anni Novanta, furono significativi per il mondo Open Source poiché è proprio in
questo decennio che Linus Torvalds, studente al secondo anno di informatica presso
l'Università di Helsinki, che sviluppò un proprio sistema operativo, imitando le
funzionalità di Unix. (questo argomento verrà approfondito in seguito)
Internet nel frattempo, rese possibile la comunicazione tra persone molto distanti in tempi
-3-
.:: Informatica ::.
rapidi e a basso costo. Inoltre rese possibile la distribuzione di software direttamente dalla
rete, riducendo ulteriormente i costi di duplicazione e le difficoltà a reperire il software
stesso. La diffusione dei CD-Rom come supporto privilegiato di raccolte di software rese
possibile il fenomeno delle cosiddette distribuzioni.
Agli inizi degli anni Novanta, l'idea delle licenze liberali era rappresentata soprattutto da
Richard Stallman e la sua FSF, ovvero le licenze liberali per eccellenza erano la GPL e la
LGPL che però venivano ritenute "contagiose", in quanto a partire da un codice licenziato
con la GPL qualsiasi ulteriore modifica deve avere la stessa licenza. Le idee stesse di
Stallman venivano viste con sospetto dall'ambiente commerciale statunitense, il che non
facilitava la diffusione del software libero. Per favorire dunque l'idea delle licenze liberali
nel mondo degli affari, Bruce Perens, Eric S. Raymond, Ockman e altri cominciarono nel
1997 a pensare di creare una sorta di lobby a favore di una ridefinizione ideologica del
software libero , evidenziandone cioè i vantaggi pratici per le aziende e coniarono il
termine "Open Source". Ciò anche al fine di evitare l'equivoco dovuto al doppio significato
di free nella lingua inglese, visto che spesso veniva interpretato come "gratuito" invece che
come "libero". L'iniziativa venne portata avanti soprattutto da parte di Raymond che, in
occasione della liberalizzazione del codice sorgente di Netscape, voleva utilizzare un tipo
di licenza meno restrittivo per le aziende di quanto fosse il GPL.
La scelta a favore dell'Open Source da parte di alcune importanti imprese del settore come
la Netscape e l'IBM, facilitarono inoltre l'accettazione del movimento Open Source presso
l'industria del software, facendo uscire l'idea della "condivisione del codice" dalla cerchia
ristretta nella quale era rimasta relegata fino ad allora. Venne cioè accettata l'idea che
l'open source fosse una metodologia di produzione software efficace , nonostante , nel suo
famoso saggio La Cattedrale e Il Bazaar , Eric S. Raymond avesse esplicitamente criticato i
tradizionali metodi di ingegneria del software , metodi che fino a quel momento avevano
dati buoni frutti.
-4-
.:: Informatica ::.
VANTAGGI/SVANTAGGI DEL SOFTWARE OPEN SOURCE
Vantaggi
✔
per la sua natura aperta, è gratuito (salvo rare eccezioni)
✔
è possibile personalizzarlo ed adattarlo alla proprie esigenze
✔
il codice sorgente è sottoposto ad una revisione da parte di moltissime persone,
pertanto è più difficile che contenga bachi e malfunzionamenti
✔
se viene scoperto un baco o una falla di sicurezza, la sua correzione di solito è
molto rapida
✔
essendo il sorgente liberamente consultabile, non è possibile inserire
intenzionalmente nel software backdoor, cavalli di Troia o spyware senza che
questi vengano prontamente scoperti ed eliminati, come invece è accaduto per
alcuni software commerciali (database Interbase della Borland)
✔
non esistendo standard proprietari, le cui specifiche sono normalmente segrete, è
molto più facile costruire software interoperabile
✔
permettere a chiunque di modificare i sorgenti garantisce che ogni nuova
funzionalità o copertura di un baco possa essere proposta da chiunque e
immediatamente applicata dagli sviluppatori
✔
collaborando con sviluppatori volontari e utilizzando il lavoro della comunità,
anche le piccole e medie imprese sono in grado di sviluppare e vendere prodotti
di alta qualità, senza dover ampliare il loro organico
Svantaggi
✔
alcune tipologie di software, soprattutto di nicchia, non sarebbero disponibili
come software open source
✔
lo sviluppo del software open source non segue i tradizionali principi di
ingegneria del software; ciò porta a risultati incoerenti e ad una mancanza di
uniformità e consistenza
✔
nonostante il codice sorgente sia liberamente disponibile, non tutti sono in grado
di apportarvi modifiche, inoltre l'usabilità spesso non è ottimale per un utente
inesperto
✔
alcuni software moderni hanno raggiunto livelli di complessità tale da richiedere
il supporto di un'azienda che impieghi molte persone che lavorano a tempo
pieno al progetto
✔
mancando un sistema formale di revisione, il software open source sarebbe
inadatto ad applicazioni mission-critical (ad esempio sistemi di avionica)
✔
anche se spesso è disponibile molta documentazione, a volte (ma qualcuno
sostiene che accada spesso) è incompleta o non aggiornata
-5-
.:: Informatica ::.
LA STORIA DI LINUX
Gli albori
Linux nacque come hobby nel 1991 grazie al giovane studente dell'Università di Helsinki
in Finlandia di nome Linus Torvalds.
Torvalds, appassionato di programmazione, era insoddisfatto del sistema operativo Minix
(sistema operativo basato su Unix destinato all'insegnamento scritto da Andrew
Tanenbaum), e decise perciò di creare un kernel, con lo scopo di divertirsi e studiare il
funzionamento del suo nuovo computer (un 80386), utilizzando le parti del sistema GNU
già funzionanti.
Poiché la licenza di Minix non permetteva il
riuso del software se non per motivi
puramente didattici, dovette creare il suo
kernel partendo da zero. Per la sua
creazione decise di usare la licenza GPL per
permettere a chiunque di contribuire e di
utilizzarlo in modo libero.
Linus Torvalds
Linux all'inizio era un semplice emulatore
di terminale scritto in C e assembler (il che rendeva Linux, almeno all'inizio, strettamente
vincolato all'architettura x86) che poteva essere avviato da floppy disk senza doversi
appoggiare ad un sistema operativo. L'emulatore di terminale avviava e gestiva due
thread, uno per mandare segnali alla porta seriale e uno per riceverli, quando poi Linus
ebbe bisogno di leggere e scrivere file su disco, questo emulatore fu esteso in modo che
potesse gestire un filesystem. Lentamente questo programma si trasformò in un intero
kernel in grado di gestire un sistema operativo e Linus iniziò a documentarsi sulle
specifiche POSIX, chiedendo assistenza sul newsgroup comp.os.minix nel famoso
messaggio del 25 agosto 1991. La prima versione del kernel Linux, la 0.01, fu pubblicata su
Internet il 17 settembre 1991 e la seconda nell'ottobre dello stesso anno. Sin dalla versione
0.01 si poteva compilare e far partire la shell GNU Bash: si aveva un sistema operativo
minimale da cui poter partire per ulteriori miglioramenti. All'inizio era richiesto un
computer con Minix per configurare, compilare e installare Linux (fino alla versione 0.10,
la 0.11 poteva essere compilata da linux stesso), perché usava il filesystem del sistema sul
-6-
.:: Informatica ::.
quale si appoggiava. Presto i sistemi Linux superarono Minix in termini di funzionalità,
Torvalds e altri sviluppatori della prima ora di Linux adattarono il loro kernel perché
funzionasse con i componenti GNU ed i programmi in user-space per creare un sistema
operativo completo, pienamente funzionante e libero.
Linux is obsolete
Il 29 gennaio 1992 Andrew Tanenbaum, l'autore di minix, probabilmente irritato dal
continuo interesse verso Linux sul newsgroup del suo sistema operativo scrisse un
messaggio dal titolo “LINUX is obsolete”. Nel post Tanenbaum criticava l'architettura
monolitica del kernel linux e la sua scarsa portabilità. Linus replicò immediatamente alla
provocazione ribattendo punto per punto a Tanenbaum, sminuendo inoltre minix e il suo
autore, citando il fatto che la maggior parte del SO ideato da Tanenbaum fosse stato in
realtà scritto da Bruce Evans.
Linux e la rete
Nella primavera del 1992 l'hacker Orest Zborowski riuscì a rendere eseguibile il server X
sulla versione 0.13 di Linux. Per far ciò Orest dovette implementare tutta la struttura degli
Unix Domain Socket indispensabili a X Window e quindi un primo livello socket sul quale
venne poi costruita tutta l'infrastruttura di rete di Linux. In realtà il tutto era imbastito in
maniera un po' caotica e non era ben integrato all'interno del kernel ma Linus accettò
comunque la patch perché con essa era possibile sia utilizzare X, sia utilizzare tale
infrastruttura per dotare Linux di uno stack di rete. Entusiasta della novità Linus rilasciò
dopo la versione 0.13 la versione 0.95 senza pensare a tutti i problemi di sicurezza che la
rete avrebbe comportato. Per rimediare alla leggerezza nei due anni che trascorsero dalla
0.95 alla 1.0 Linus dovette utilizzare sia un ulteriore numero per indicare il livello di patch
sia le lettere dell'alfabeto (sino alla versione 0.99.15Z, 0.99 15° livello di patch, revisione Z).
L'arrivo di Alan Cox
Sino al kernel 0.96 il vero punto debole di Linux era il supporto TCP/IP (utilizzato per la
trasmissione di dati in rete). Fu così che uno squattrinato programmatore inglese, Alan
Cox, non potendo
permettersi
un costoso
-7-
coprocessore
indispensabile
per
il
.:: Informatica ::.
funzionamento di BDS386 (uno unix molto più avanzato e stabile di Linux), decise di
sostenere la causa di Linus Torvalds (il kernel Linux infatti non richiedeva l'utilizzo del
costoso coprocessore matematico, poiché esso poteva venire emulato). Alan, sviluppatore
molto esperto, riuscì a dotare il nuovo kernel di un Network Layer (che verrà mantenuto
sino al kernel 2.0.29!), il quale forniva finalmente un buon supporto TCP/IP.
Alan Cox con il cappello
simbolo della distribuzione RedHat
La versione 1.0
Il 14 marzo 1994 il 16° livello di patch del kernel 0.99 divenne Linux 1.0. Fu lo stesso Linus
Torvalds a presentare la prima versione stabile della sua creatura presso l'Università di
Helsinki.
La slackware
La slackware fu la prima distribuzione usabile di Linux. Essa, per venire il più incontro
possibile agli utenti, scelse programmi e utilities semplificate in nome di snellezza e
stabilità di sistema. Tuttavia molti sentirono la mancanza di una configurazione con
interfaccia grafica e di un sistema di pacchettizzazione più avanzato del basilare
pkgtoo1.
Oggi
Inutile dire che con il passare degli anni, Linux crebbe esponenzialmente ed affiancò alle
funzioni
basilari
delle
sue prime versione, features
sempre
più complete e
all'avanguardia, come il nuovo sistema di paginazione, un nuova strategia di gestione
della swap e il recentissimo schedule O(1) [implementato nell'ultima versione kernel
disponibile, la 2.6.0].
-8-
.:: Informatica ::.
Oggi, Torvalds continua a dirigere lo
sviluppo dei kernel, mentre altre parti
del sistema, come le componenti GNU,
sono
sviluppate
compito
di
integrato,
che
separatamente.
fornire
un
combina
Il
sistema
tutte
le
componenti di base con le interfacce
grafiche (come per esempio GNOME o
KDE, che a loro volta si basano sulla
presenza dell'X Window System) e con
il software applicativo,
viene ora
svolto dalle distribuzioni. Nel 1996 fu
scelto come logo ufficiale di Linux un
pinguino disegnato da Larry Ewing e
ad esso venne dato il nome di TUX
come abbreviazione di Torvalds UniX.
Altre fonti sostengono si tratti della
abbreviazione di TUXedo che in inglese significa il nostro "giacca e cravatta" a causa della
colorazione del corpo del pinguino. Oggi GNU/Linux resta il sistema operativo preferito
da migliaia di programmatori sparsi in tutto il mondo, è usato soprattutto come server in
ambienti di produzione ma ultimamente ha conosciuto anche la sua affermazione in
ambiente desktop.
Il pinguino TUX
-9-
.:: Informatica ::.
KERNEL LINUX
Il kernel Linux è un software libero distribuito con licenza GNU General Public License; è
stato creato nel 1991 da Linus Torvalds. Integrato con il Sistema GNU ha dato vita al
sistema operativo GNU/Linux (sebbene spesso sia chiamato semplicemente Linux).
Il kernel è il "cuore" di un sistema operativo (nucleo) e fornisce tutte le funzioni essenziali
per il sistema, in particolare la gestione della memoria, delle risorse del sistema e delle
periferiche, assegnandole di volta in volta ai processi in esecuzione. La controparte del
kernel è la shell, ovvero l'interfaccia utente del sistema, la parte più esterna. I programmi
chiedono le risorse al kernel attraverso delle chiamate (system call) e non possono
accedere direttamente all'hardware. Il kernel si occupa quindi di gestire il tempo
processore, le comunicazioni e la memoria distribuendole ai processi in corso a seconda
delle priorità(Scheduler).
L'architettura scelta da Torvalds per il kernel è una struttura monolitica, considerata da
alcuni obsoleta a differenza della più moderna architettura a microkernel.
Il più grosso svantaggio dei kernel monolitici è tuttavia che non è possibile aggiungere un
nuovo dispositivo hardware senza aggiungere il relativo modulo al kernel, operazione
che richiede la ricompilazione del kernel. In alternativa è possibile compilare un kernel
con tutti i moduli di supporto all'hardware, ingigantendo però le sue dimensioni. Tuttavia
i kernel monolitici più moderni come il Kernel Linux e FreeBSD possono caricare dei
moduli in fase di esecuzione, a patto che questi fossero previsti in fase di compilazione,
permettendo così l'estensione del kernel quando richiesto, mantenendo al contempo le
dimensioni del codice nello spazio del kernel al minimo indispensabile.
Rappresentazione grafica
di un kernel monolitico
- 10 -
.:: Informatica ::.
Come ogni progetto che sia software libero, anche il kernel Linux è in continua
evoluzione. La dimensione del kernel Linux cresce in maniera esponenziale, aggiungendo
nuovi moduli, nuovo hardware supportato e così via.
Linux è un kernel che supporta il multitasking ed è multi utente. Ciò permette che diversi
utenti (con privilegi differenziati) possano eseguire sullo stesso sistema diversi processi
software in simultanea. Attualmente linux supporta gran parte dell'hardware disponibile
per PC e supporta un numero enorme di architetture (tra cui SPARC, PowerPC e le più
moderne CPU a 64 bit).
Dato che il codice sorgente di Linux è disponibile a tutti, è ampiamente personalizzabile,
al punto da rendere possibile, in fase di compilazione, l'esclusione di codice non
strettamente indispensabile. La flessibilità di questo kernel lo rende adatto a tutte quelle
tecnologie embedded emergenti e anche nei centri di calcolo distribuito (cluster beowulf)
fino ad essere incorporato in alcuni videoregistratori digitali e nei telefoni cellulari.
La versione 2.6.16, uscita il 20 marzo 2006, ha introdotto il supporto al processore Cell, il
cuore della futura PS3 della Sony.
SICUREZZA DEL FILESYSTEM LINUX
Talvolta alcuni file sono davvero preziosi, e non ci si può permettere che, accedendo
fisicamente al computer, si riesca a leggerli in qualche modo. Per la sicurezza dei dati, Il
Kernel 2.6 ha introdotto parecchie novità. Tra le più importanti, la possibilità di cifrare il
contenuto delle partizioni in modo tale che solo chi è autorizzato, tramite una chiave, può
montare la partizione in questione e accedere ai dati protetti.
Per poter fare tutto ciò è necessario un Kernel (minimo 2.6.4) in cui sia presente il modulo
md-crypt. Questo modulo utilizza per cifrare i dati che vengono scritti nella partizione
selezionata un algoritmo block cipher.
Per creare della partizioni crittografate è necessario anche l'utility dmsetup. Questa utility
è però molto complessa da usare. Fortunatamente però, Christophe Saout, l'autore del
modulo dm-crypt, ha realizzato un pratico script che semplica notevolmente le cose,
rendendo la configurazione delle partizioni cifrate abbastanza rapida e veloce.
- 11 -
.:: Informatica ::.
LE DISTRIBUZIONI LINUX
Riassumendo quindi con Linux si intende solo il kernel, il nucleo del sistema operativo.
Per diventare un sistema operativo a tutti gli effetti, al kernel vengono affiancati un
sistema di pacchettizzazione e gli strumenti di configurazione; il prodotto che ne esce
viene chiamato “distribuzione”.
Ovviamente non esiste un'unica versione di distribuzioni GNU/Linux ma ne esistono
diverse, solitamente create da comunità di sviluppatori o società, che preparano e
scelgono i pacchetti da includere. Ognuna di esse ha delle particolarità che le rende più
efficaci in determinati ambiti.
Le maggiori distribuzioni Linux sono:
✔
RedHat
✔
Debian
✔
Mandriva
✔
Ubuntu
✔
Gentoo
✔
Suse
✔
Fedora
✔
Slackware
Oltre alle distribuzioni classiche esistono delle distribuzioni eseguibili direttamente da
CD senza che sia richiesta l'installazione sul proprio hard disk. La più famosa
distribuzone live è: Knoppix
RedHat
La RedHat è stata una delle prime distribuzioni ad
aver goduto di grande diffusione, poiché veniva
fornita già di un desktop environment (GNOME) e
diversi
strumenti
configurazione.
utili
L'ultima
a
semplificarne
versione
la
rilasciata
gratuitamente fu la RedHat 9.0, in seguito alla
quale la società decise di dedicarsi esclusivamente
- 12 -
.:: Informatica ::.
al mercato enterprise (utilizzata in ambienti produttivi e non più pensata per i desktop
casalinghi).
Questa distribuzione inoltre può vantare il fatto di essere stata la prima ad utilizzare il
sistema di pacchettizzazione RPM (RedHat Package Manager), che consentiva una miglior
gestione del software tramite pacchetti precompilati, rispetto alla compilazione dei
sorgenti.
Presso questa società, lavora tuttora Alan Cox, creatore dello stack TCP/IP della prima
versione kernel.
Debian
Debian è una delle distribuzioni più vecchie e apprezzate da sviluppatori e
amministratori di sistema. La filosofia che sta dietro a Debian è rigorosamente orientata al
Free Software. Debian punta ad avere nella sua distribuzione solo software libero e tutti i
programmi "non free" vengono rilasciati su un cd apposito.
In tutti i suoi anni di sviluppo Debian ha sempre mostrato
grande affidabilità e stabilità facendone i suoi punti di
forza. Questo le ha permesso di guadagnarsi molto credito
tra gli utenti Linux, rendendola una delle più usate sul lato
server. Debian inoltre è la distribuzione che supporta il
maggior numero di processori.
Una delle più grandi pecche di Debian è la mancanza di pacchetti aggiornati alle ultime
versioni, che è comunque possibile reperire da altri mirror non ufficiali. Quello che non la
rende appetibile a un utente alle prime armi è la mancanza di alcune utility grafiche per la
configurazione e gestione del sistema, e l'interfaccia del suo installer che richiede una
buona conoscenza del proprio hardware.
Altro punto di forza di debian è l'Advanced Packaging Tool (apt), un sistema di gestione
che consente l'installazione, la rimozione e l'aggiornamento dei pacchetti in maniera
estremamente intuitiva, gestendo automaticamente le dipendenze ed impedendo la
creazione di situazioni inconsistenti.
- 13 -
.:: Informatica ::.
Mandriva
Mandriva è il frutto dell'unione di Mandrake,
Conectiva e Lycoris. Essa si è molto evoluta da
quanto Mandrake era soltanto una versione di
RedHat con KDE, ed ora Mandriva è certamente
uno dei giganti del software libero, sia come
potenza commerciale sia come prodotti da offrire
all'utenza. È una distribuzione molto aggiornata e
curata graficamente. Si è sempre distinta per il suo
orientamento al mercato desktop, grazie ai tool di
configurazione fornisce i propri utenti di strumenti per aiutare passo passo a configurare
al meglio il proprio PC per gustarsi a pieno questo Sistema Operativo. Alcune volte la
semplicità d'uso penalizza la sicurezza.
Ubuntu
Ubuntu è una delle distribuzioni rivelazione del momento. È nata per iniziativa del
miliardario
Africano
Mark
Shuttleworth,
ad andare
nello
il
primo
spazio. Ubuntu
Sud
ha
l'obiettivo di produrre una distribuzione basata su
Debian che possa essere installata e utilizzata su un
PC da un normale utente. Il target è quindi quello
desktop. Per raggiungerlo il team di Ubuntu si pone
l'obiettivo di rilasciare una nuova versione ogni sei
mesi proponendo in pratica una Debian modificata
per essere estremamente facile da installare e contenente il software più aggiornato tra
quello disponibile. Eredita da Debian la struttura e molti dei vantaggi, tra cui molti sono
legati al lato della sicurezza, come il sistema degli aggiornamenti. Alcune politiche però
legate ai permessi, per renderli più agevoli all'utenza casalinga non possono essere
considerate molto sicure.
- 14 -
.:: Informatica ::.
Gentoo
Gentoo è sicuramente una delle maggiori sorprese degli ultimi tempi nel mondo del Free
Software. La tipologia di questa distribuzione differisce enormemente da quella delle più
classiche. Le novità introdotte da questa distribuzione sconvolgono il concetto classico di
pacchetto precompilato. L'obiettivo prefissato di
Gentoo è quello di dare in mano all'utente un sistema
totalmente ottimizzato e personalizzato. Per far
questo è stato studiato un nuovo tipo di installazione
e un nuovo sistema di distribuzione dei pacchetti.
Gentoo ha studiato un nuovo sistema che mette in
grado, per chi lo desidera, di compilarsi tutto.
Il sistema su cui si basa Gentoo, chiamato Portage,
interamente scritto in Python; con pochi e semplici comandi sarà possibile aggiornare il
database dei pacchetti esistenti (come Debian) la risoluzione di tutte le eventuali
dipendenze, e la compilazione di tutto quanto ciò che è necessario per far funzionare quel
determinato programma. Tutto questo ha un costo non indifferente che incide
sull'usabilità del sistema. All'utente che vuole installare Gentoo è richiesta un'ottima
conoscenza del proprio hardware e della configurazione di una distribuzione senza
l'ausilio di interfacce grafiche. Inoltre i tempi di installazione e di aggiornamento non sono
indifferenti (per l'installazione si parla addirittura di giornate...).
Suse
SuSE è una società tedesca che ha deciso di
scendere in campo sviluppando una propria
distribuzione. Come Red Hat, anche SuSE si
lancia
rilasciando
"commerciali".
delle
Caratteristica
distribuzioni
che
colpisce
subito chi inizia ad usarla è il suo potente tool
per la messa a punto del sistema, YaST, che
unifica tutte le utility in uno strumento centralizzato. Questo dà il vantaggio all'utente che
- 15 -
.:: Informatica ::.
vuole per la prima volta "provare" questa distribuzione di avere subito un punto di
riferimento a cui fare affidamento per la configurazione, lasciando agli utenti più
smaliziati la possibilità di una configurazione "fine". Usa come ambiente grafico KDE e
una versione del kernel appositamente modificata per questa distribuzione.
Nel 2003 SuSE è stata acquistata da Novell uno dei colossi dell'informatica. Da allora è
evoluta molto e recentemente il suo sviluppo è stato affidato a una comunità, il cui
risultato ha dato il via a OpenSuSE, una versione totalmente aperta della distribuzione
tedesca.
Fedora
Red Hat ha deciso di puntare esclusivamente sul
mercato professionale e ha avviato il progetto Fedora
che ha lo scopo di creare una comunità attorno alla
quale sviluppare una distribuzione che può servire
come base per le proprie soluzioni business. Fedora è
quindi un campo di prova per Red Hat che ora può
contare sul contributo di una vasta comunità di
volontari.
Slackware
Slackware è stata una delle primissime distribuzioni a comparire sulla scena del mondo
OpenSource (è presente fin dall'Aprile del 1993). Ancora
oggi è apprezzatissima da un numero sostanzioso di
utenti per la sua semplicità e sicurezza. Semplicità non
intesa come facilità d'uso, ma come linearità e pulizia.
Slackware infatti è la distribuzione per eccellenza per chi
vuole conoscere nei minimi particolari questo sistema
operativo, per chi vuole studiarlo, "smontarlo" ed
analizzarlo. Slackware non è una distribuzione commerciale, non vi girano dietro gli
interessi economici che ci sono dietro ad altre distribuzioni, tutto quello che ha fatto è
riuscita a farlo grazie ai suoi meriti.
- 16 -
.:: Informatica ::.
Non dispone di strumenti sofisticati per l'installazione né altri per la configurazione
dell'hardware, per cui è consigliata particolarmente a chi ha già una certa confidenza con
questo Sistema Operativo. Il suo sistema di gestione dei pacchetti si discosta dalla massa:
esso adotto il suo caro vecchio tgz. Ciò è anche uno dei suoi peggiori difetti: con questo
tipo di pacchetti risulta più difficile l'aggiornamento del sistema e la configurazione "in
serie" su più macchine. Nonostante questo, a detta di molti puristi rimane, assieme a
Debian, forse una delle poche distribuzioni a incarnare il "vero" spirito Linux.
Knoppix
Knoppix è una distribuzione ideata dal tedesco Klaus
Knopper che, avendo bisogno di avere sempre
sottomano il proprio software preferito, ha deciso di
creare un proprio sistema operativo. La peculiarità è
che si tratta di una distribuzione live. È estremamente
completa: al suo interno infatti, è disponibile quanto
di meglio il software libero possa offrire. Il tutto su un
DVD. È basata su Debian e questo dimostra come
questa distribuzione possa essere utile e flessibile. Essendo una distribuzione live
Knoppix ha degli eccellenti script per il riconoscimento e l'inizializzazione dell'hardware.
Tra tutte le distribuzioni Linux, Knoppix è sicuramente una delle più facili da usare;
difatti basta accendere il computer, inserire il DVD ed aspettare il boot per poter utilizzare
un sistema Linux completo con un'interfaccia semplice ed intuitiva.
- 17 -