Debian
Da Wikipedia, l'enciclopedia libera.
Screenshot di Debian con KDE |
|
Sviluppatore: | Debian Project |
Famiglia SO: | GNU/Linux |
Modello del sorgente: | Software libero |
Ultima versione: | 4.0r3 (Etch) / 17 febbraio 2008 |
Tipo di kernel: | Linux Kernel monolitico (2.6.18) |
Licenza: | GNU/GPL |
Stadio di sviluppo: | Stabile |
Sito web: | www.debian.org |
(EN)
« Debian: the Universal Operating System »
|
(IT)
« Debian: Il Sistema Operativo universale »
|
(Slogan ufficiale della distribuzione.)
|
Debian GNU/Linux [ˈdɛbiən], creata dal Debian Project, è una distribuzione GNU/Linux largamente usata, e sviluppata attraverso la collaborazione di volontari da ogni parte del mondo. Si tratta di un sistema operativo per computer composto esclusivamente da software libero.
Il nome Debian è stato coniato dal fondatore del progetto, Ian Murdock, unendo il proprio nome e le prime tre lettere di quello della sua fidanzata (poi moglie) Debra.
Indice |
[modifica] Storia
Il progetto Debian è stato fondato da Ian Murdock: non soddisfatto dalla distribuzione GNU/Linux diffusa all'epoca, la SLS, egli tentò dapprima di modificarla, quindi decise di creare una distribuzione alternativa, partendo da zero.
Alcune tappe importanti:
- 16 agosto 1993: primo annuncio pubblico, inviato da Ian Murdock al newsgroup comp.os.linux.development [1].
- agosto 1995: inizio dello sviluppo del primo port di Debian, ovvero la prima versione per un'architettura diversa dall'Intel i386: la Motorola 68000 (m68k).
- 17 giugno 1996: rilascio della prima versione stabile (Debian 1.1 "Buzz")
- 16 giugno 1997: incorporazione di Software in the Public Interest, l'organizzazione non-profit che amministra le donazioni ricevute dal progetto Debian e provvede alle sue spese.
- 5 luglio 1997: approvazione del Contratto Sociale Debian.
- 24 luglio 1998: rilascio della prima versione stabile multiarchitettura (Debian 2.0 "Hamm"). Architetture supportate: i386 e m68k.
- 2 dicembre 1998: ratifica della Costituzione Debian.
- 1999: inizio dello sviluppo di Debian GNU/Hurd, il primo port di Debian ad utilizzare un kernel diverso da Linux.
- dicembre 2000: nascita della distribuzione testing. La prima testing è stata Debian 3.0 "Woody".
- 2-5 luglio 2001: prima edizione di DebConf, l'incontro annuale degli sviluppatori Debian.
- 9 settembre 2005: estensione del supporto di sicurezza alla distribuzione testing.
- 8 aprile 2007: rilascio dell'attuale versione stabile, Debian 4.0 "Etch".
[modifica] Organizzazione del progetto
Il Progetto Debian si distingue da tutti gli altri per la sua peculiare forma di organizzazione. La sua struttura infatti si ispira a quella di una vera e propria società democratica, tanto che il documento che stabilisce le regole interne al progetto è chiamato Costituzione. Un altro importante documento è il Contratto Sociale che esprime l'impegno del progetto in favore del software libero e dei suoi utenti.
Tutti i partecipanti al progetto sono volontari e non esiste un'azienda di riferimento che lo finanzi; tutte le spese sono pagate dalle donazioni raccolte attraverso "Software in the Public Interest" (SPI Inc.), una organizzazione non-profit per i progetti di software libero. Debian è quindi considerata da molti come la sola tra le maggiori distribuzioni di GNU/Linux ad essere genuinamente libera da interessi commerciali.
Non esiste una struttura gerarchica né ruoli dirigenziali; vi sono solo alcuni membri del progetto ai quali sono demandate delle funzioni specifiche, ad esempio la gestione dei server e dell'archivio dei pacchetti (ftp-master) o il coordinamento del rilascio delle versioni stabili (release manager). L'unico ruolo "di comando" è quello di Debian Project Leader, formalmente a capo del progetto, che viene eletto con mandato annuale; ma anche questo incarico è principalmente rappresentativo e di coordinamento e i suoi poteri effettivi sono limitati. Tutte le decisioni più importanti vengono prese a maggioranza dai Debian Developer, cioè i membri ufficiali del progetto (attualmente sono circa 1000), tramite votazione.
Le discussioni interne al progetto si svolgono generalmente sulle numerose mailing list di Debian, ognuna dedicata a uno specifico argomento. Non sono infrequenti discussioni accese e talvolta veri e propri litigi. Alcuni ne ricavano l'impressione che il tasso di conflittualità all'interno del progetto sia molto alto; altri replicano che in altri progetti vi è presumibilmente un tasso ancora più alto, ma non viene percepito all'esterno perché le discussioni non sono pubbliche.
[modifica] Caratteristiche
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 progetto Debian ha tra i suoi obiettivi quello di creare "il sistema operativo universale": sono stati sviluppati dei port per altri kernel, fra i quali GNU Hurd, Solaris, NetBSD, e FreeBSD. Questi port non sono ancora stati rilasciati ufficialmente e quindi, al momento, Debian è esclusivamente una distribuzione GNU/Linux.
In realtà, con Debian, parlare di sistema operativo risulta estremamente riduttivo: la stessa tradizionale suddivisione tra software di sistema e software applicativo perde di significato, in quanto l'intero parco software è gestito sempre in modo identico, indifferentemente dalla funzione svolta dal singolo programma. Tutti i programmi distribuiti vengono infatti compilati e resi disponibile sotto forma di pacchetti software coerenti tra loro, in modo che siano il più possibile compatibili e facilmente gestibili. In modo simile funzionano FreeBSD, OpenBSD e derivati.
L'ultimo rilascio stabile di Debian contiene più di 18.000 pacchetti per una decina di architetture, che vanno dall'architettura ARM, comunemente utilizzata nei sistemi embedded e il Mainframe IBM s390, alle più comuni x86 e PowerPC presenti nei moderni personal computer.
In questo rilascio è stato inserito anche un programma di installazione grafico, è possibile utilizzarlo digitando installgui o expertgui.
[modifica] Sistema di gestione dei pacchetti
Per approfondire, vedi la voce Advanced Packaging Tool. |
Debian è anche conosciuta per il suo sistema di gestione dei pacchetti e di APT (Advanced Packaging Tool, introdotto dalla versione 2.1). Questo programma integra un sistema di risoluzione delle dipendenze, la possibilità di effettuare molto facilmente un upgrade (di alcuni pacchetti o dell'intero sistema operativo) e la possibilità di passare da una release ad un'altra. L'installazione, la configurazione e la rimozione dei pacchetti è semplificata e flessibile, e non necessita quasi mai di un reboot del computer, così come è supportato l'aggiornamento di programmi in esecuzione. È possibile inoltre mescolare pacchetti provenienti da differenti release di Debian, creando un sistema ibrido.
I pacchetti si possono installare (sempre da utente root) direttamente dalla shell con questi comandi:
aptitude install <pacchetto> # installa il pacchetto <pacchetto> risolvendo le necessarie dipendenze aptitude remove <pacchetto> # rimuove il pacchetto <pacchetto> aptitude purge <pacchetto> # rimuove il pacchetto <pacchetto> e i relativi file di configurazione aptitude update # scarica le ultime liste di pacchetti disponibili dai repository aptitude safe-upgrade # aggiorna tutti i pacchetti del sistema alla versione più recente disponibile aptitude full-upgrade # aggiorna la versione di Debian aptitude search <pacchetto> # cerca un pacchetto dal nome simile a quello passato da linea di comando
Esistono altri programmi in grado da interfacciarsi con APT, alcuni da riga di comando (come il tradizionale dpkg o apt-get), altri dotati di una comoda ed intuitiva interfaccia grafica, come Synaptic. Nella gestione dei pacchetti, Debian ed il sistema di ports e packages BSD sono simili.
[modifica] Repository
I pacchetti di Debian sono raccolti in archivi (repository) accessibili via Internet. I pacchetti contenuti negli archivi delle varie release sono raggruppati per tipo di licenza software nelle seguenti sezioni:
- main: solo software libero senza alcuna dipendenza non libera.
- contrib: software libero che però dipende da altri pacchetti non liberi per funzionare.
- non-free: software non libero (ma comunque distribuibile gratuitamente).
- in passato vi era anche una sezione non-US contenente software crittografico che per motivi legali non poteva essere esportato dagli Stati Uniti. In seguito la legge è stata modificata eliminando la necessità di questa sezione.
Ufficialmente la distribuzione Debian GNU/Linux è costituita unicamente dalla sezione main (infatti Debian si dichiara "100% free software"). Le sezioni contrib e non-free sono rese disponibili come un servizio aggiuntivo a beneficio degli utenti.
I repository Debian contengono anche i sorgenti di tutti i pacchetti di software libero. È possibile ricompilare qualsiasi pacchetto (o anche tutti i pacchetti dell'intero sistema in una sola volta) tramite l'uso del pacchetto apt-build, che però al momento non è considerato completamente stabile.
APT pur facendo il suo dovere non si può certo considerare un packet manager all'avanguardia, infatti a differenza dei moderni gestori di pacchetti che lavorano facendo transazioni su database[citazione necessaria], APT lavora su un albero in cui fa match su stringhe sul nome dei pacchetti senza averne l'integrità referenziale. La conseguenza di questo è che finché i repository vengono tenuti con cura APT non ha nessun problema, ma se i manteiner commettono un errore nelle creazione di un pacchetti APT può creare danni anche gravi sul sistema. Non sono rari i casi in cui durante un aggiornamento APT si ferma a metà a causa di un errore e lascia il sistema in uno stato inutilizzabile.
[modifica] Pacchetti del kernel
Debian include inoltre la possibilità di ricompilare e nel contempo pacchettizzare un kernel personalizzato, così come, attraverso il pacchetto module-assistant, quella di semplificare notevolmente la compilazione e pacchettizzazione di nuovi moduli del kernel, automatizzandone il download dei sorgenti, la preparazione dell'ambiente per la compilazione e perfino la compilazione per architetture multiple.
[modifica] Architetture supportate
La versione corrente (Etch) supporta le seguenti architetture:
- DEC Alpha
- ARM
- HP PA-RISC
- Intel x86
- Intel IA-64
- Motorola 680x0
- MIPS
- MIPS (DEC)
- PowerPC
- IBM S/390
- SPARC
- AMD64
[modifica] Port non Linux
- Debian GNU/Hurd: tentativo di creare un sistema operativo interamente GNU
- Debian GNU/NetBSD: port dell'intero sistema operativo Debian su kernel NetBSD
- Debian GNU/KFreeBSD: tentativo di portare l'intero sistema Debian su kernel FreeBSD
[modifica] Politiche di stabilità
Il Progetto Debian è famoso nella comunità open source per la maniacalità con cui ogni singolo pacchetto viene testato, al fine di eliminare (in linea teorica) ogni possibile malfunzionamento.
Per comprendere meglio i requisiti di stabilità del progetto, è sufficiente ricordare che i pacchetti ufficiali della maggior parte delle distribuzioni (come ad esempio Fedora o Mandriva) hanno una stabilità classificabile fra il ramo unstable e quello testing del progetto Debian.
Questa politica estremamente rigida ha però prodotto quello che secondo molti è l'aspetto più negativo e sicuramente il più controverso del progetto, ovvero la lentezza dei cicli di rilascio (l'ultima edizione stabile, prima del recente rilascio dell'8 aprile 2007, risale all'estate 2005).
Sebbene il ramo testing sia nella maggior parte dei casi abbastanza affidabile per l'utenza domestica (e per questo spesso preferito al ramo stabile, specialmente in ambiente desktop), la lentezza dei rilasci ha provocato la migrazione di molti utenti ad altre distribuzioni, come ad esempio Ubuntu (che secondo molti è nata proprio con l'intento di offrire un ciclo di sviluppo più accettabile).
Il team di sviluppo Debian ha quindi deciso di adottare alcuni cambiamenti organizzativi e di impegnarsi a seguire un ciclo di rilascio di 18 mesi per poter competere nell'ambito desktop.
È tuttavia da notare che un singolo rilascio non rimane immutato durante il suo periodo di vita, poiché il software di ogni relase stabile viene continuamente aggiornato, rendendo possibile mantenere sempre il passo con la risoluzione di problemi di sicurezza tramite il tool apt-get.
[modifica] Versioni di Debian
Debian GNU/Linux viene sviluppata secondo un modello organizzativo per il quale sono mantenute parallelamente diverse versioni: stable, testing, unstable, oldstable, experimental. Queste versioni si differenziano per la frequenza con cui vengono aggiornate.
[modifica] Stable
La distribuzione stable (stabile) è la distribuzione Debian GNU/Linux ufficiale. Una nuova versione viene rilasciata quando gli sviluppatori ritengono che essa soddisfi i severi requisiti di stabilità e affidabilità autoimposti da Debian. L'attuale è la versione 4.0 "Etch".
Inizialmente non si ponevano scadenze fisse per il rilascio di una nuova versione stabile: la regola era release when it's ready, "rilascia quando è pronta". Con il crescere del numero dei pacchetti tuttavia la difficoltà di "stabilizzare" una versione andava via via aumentando fino a comportare un intervallo temporale esageratamente lungo tra una versione e l'altra: la versione 3.1 "Sarge" è stata rilasciata quasi tre anni dopo la precedente 3.0 "Woody". È stato quindi deciso, dopo Sarge, di effettuare i successivi rilasci a intervalli regolari di 18 mesi, rinunciando se necessario a qualcosa in termini di stabilità (ma Etch è stata rilasciata in ritardo di quattro mesi sulla data prevista).
Occorre sottolineare che il concetto di stable (stabile) NON si riferisce al grado di affidabilità di funzionamento del software, ma al fatto che il software, una volta dichiarato stabile, non subirà nessuna modifica, e manterrà le stesse funzionalità senza introdurne ulteriori: in altre parole, un software dichiarato stabile non subisce aggiunte di nuove funzionalità ma semplicemente mantenuto (cioè vengono corretti gli errori di programmazione e/o i bachi di sicurezza).
Un software stabile è tendenzialmente più sicuro poiché evitare di introdurre nuove funzionalità equivale a non aggiungere possibili bachi di programmazione, per cui, con l'andare del tempo, un software stabile diventa sempre più sicuro/affidabile man mano che nuovi bachi vengono scoperti e corretti. L'assenza di bachi è la caratteristica maggiormente ricercata dagli amministratori di sistemi informatici, e questo è uno dei motivi per cui la versione stable di Debian riscontra un buon successo tra coloro che installano macchine con funzionalità di server.
[modifica] Testing
La distribuzione testing contiene quei pacchetti che sono già stati testati nel ramo unstable per un certo periodo di tempo e che vengono considerati sufficientemente stabili e con un basso numero di bug. Quando la comunità decide che è giunta l'ora di rilasciare una nuova versione stabile, la distribuzione testing viene "congelata", ovvero non vengono più immessi pacchetti provenienti dal ramo unstable. Dopo una fase finale di risoluzione degli ultimi bug, la testing diventa stable, e viene creato un nuovo ramo testing.
Ha il non trascurabile vantaggio di includere le versioni più aggiornate del software, quindi indicata per un Desktop che intenda utilizzare hardware e tecnologie recenti. Ovviamente i test sulla stabilità e sicurezza non sono ancora definitivi, anche se dal 9 settembre 2005 è previsto il supporto ufficiale del Security Team Debian.
Il nome in codice dell'attuale distribuzione testing, prossima stable, è "Lenny"; il numero di versione sarà 5.0. Il suo rilascio è previsto nel settembre 2008 ma, vista la storia dei precedenti rilasci, è probabile un certo ritardo.
[modifica] Unstable
La distribuzione unstable è quella dello sviluppo di Debian. Contiene il software più aggiornato a disposizione degli utenti Debian, sconsigliato per postazioni Server o se la sicurezza e la stabilità sono ritenuti parametri critici. Viene comunque ritenuta da molti utenti sufficientemente stabile per essere usata da loro. Il suo nome in codice (che non viene mai cambiato in quanto non vengono fatti rilasci di questa distribuzione) è "Sid".
[modifica] Oldstable
La distribuzione oldstable è la versione stabile precedente a quella corrente. Essa viene mantenuta nell'archivio di Debian fino al rilascio di una nuova versione stabile, al che viene sostituita dalla successiva. La versione attuale è la 3.1 "Sarge". Sarge è stata la prima distribuzione oldstable a ricevere un aggiornamento successivamente al rilascio di una nuova release stabile.
[modifica] Experimental
Non è una vera e propria distribuzione in quanto non contiene tutti i pacchetti, ma solo le nuove versioni di pacchetti per cui viene ritenuta necessaria una fase preliminare di prova prima di immetterli nella distribuzione unstable. Non ha un nome in codice.
[modifica] Nomi delle versioni
I nomi in codice delle distribuzioni Debian sono mutuati dal nome dei personaggi del film di animazione Toy Story - Il mondo dei giocattoli, e sono riportati di seguito [1]:
- 1.1 -- Buzz, rilasciata il 17 giugno 1996.
- 1.2 -- Rex, rilasciata il 12 dicembre 1996;
- 1.3 -- Bo, rilasciata il 2 giugno 1997;
- 2.0 -- Hamm, rilasciata il 24 luglio 1998;
- 2.1 -- Slink, rilasciata il 9 marzo 1999;
- 2.2 -- Potato, rilasciata il 15 agosto 2000;
- 3.0 -- Woody, rilasciata il 19 luglio 2002;
- 3.1 -- Sarge, rilasciata il 6 giugno 2005;
- 4.0 -- Etch, rilasciata l'8 aprile 2007;
- 5.0 (attuale testing) -- Lenny, rilascio previsto per settembre 2008;
- unstable -- Sid, ha sempre questo nome.
Non esiste una versione 1.0 a causa di un problema con un rivenditore di software, che aveva messo in vendita una versione beta di Debian etichettandola come versione 1.0, senza l'approvazione del progetto. Per evitare confusione si decise quindi di saltare questo numero di versione e iniziare dalla 1.1.
Mentre tutte le versioni stabili (e testing, future stabili) hanno nomi di giocattoli, il nome della versione unstable (Sid) è quello del bambino che nel film rompe i giocattoli. Alcuni interpretano Sid anche come l'acronimo di still in development ("ancora in sviluppo").
Periodicamente vengono rilasciate delle revisioni della versione stable corrente, che includono gli aggiornamenti di sicurezza rilasciati fino a quel momento e altri aggiornamenti che risolvono bachi importanti. Queste revisioni vengono identificate aggiungendo al numero di versione una lettera r seguita dal numero della revisione. Ad esempio le revisioni dell'attuale versione (4.0) sono finora:
- 4.0r1 -- rilasciata il 17 agosto 2007;
- 4.0r2 -- rilasciata il 27 dicembre 2007;
- 4.0r3 -- rilasciata il 17 febbraio 2008.
[modifica] Le novità di Etch
Etch contiene software più aggiornato rispetto alla versione precedente, cosa che la rende più adatta anche ad un utilizzo come desktop, e può supportare hardware molto recente: è anche consigliata per ambienti di produzione, per i quali la stabilità e la sicurezza sono il requisito principale richiesto ad un sistema operativo.
Inoltre, per la prima volta dall'inizio del progetto, è possibile installare il sistema con un'interfaccia grafica avanzata (caratteristica che inizialmente doveva essere inclusa in Sarge). Fra le altre novità ci sono SecureAPT, che controlla l'integrità dei pacchetti installati e la gestione degli aggiornamenti che invece di scaricare un pacchetto recente per intero, ne scarica solo le differenze rispetto a quello vecchio (migliorando notevolmente la velocità di download). Il celeberrimo browser internet Firefox è stato rinominato in Iceweasel a causa di problemi legali sull'utilizzo del nome e del marchio (per maggiori dettagli consultare l'articolo su Iceweasel).
[modifica] Distribuzioni derivate da Debian
Numerose distribuzioni GNU/Linux (più o meno famose) sono basate su Debian. Tra queste ricordiamo:
- Kanotix Live Cd - Sito Ufficiale
- Knoppix Live Cd - Sito Ufficiale
- MEPIS - Sito Ufficiale
- Morphix - Sito Ufficiale
- Ubuntu - Sito Ufficiale
- Sidux - Sito Ufficiale
L'elenco completo delle distribuzioni derivate da Debian è disponibile a questo indirizzo.
[modifica] Note
[modifica] Altri progetti
- Wikibooks contiene testi o manuali su Debian
- Wikimedia Commons contiene file multimediali su Debian
[modifica] Collegamenti esterni
Debian su DMoz (Segnala su DMoz un collegamento pertinente all'argomento "Debian") |
[modifica] Progetto ufficiale
- Home page del progetto Debian
- Costituzione Debian
- Il Contratto Sociale Debian
- Linee Guida Debian per il Software Libero
- Debian GNU/Linux 4.0 – Guida all'installazione
- Debian Reference Manuale
- A Brief History of Debian
[modifica] Siti di community
- (EN) Debian collaboration Wiki
- (EN) Planet Debian Blog degli sviluppatori
- Debianitalia.org Il sito italiano per gli Utenti Debian
- Debianizzati.org Community di utenti Debian
- DebianClan.org Community di utenti Debian nata da Hwupgrade
[modifica] Altri
- (EN) Debian Administration: risorse e trucchi per sysadmin
- Origine dei nomi delle versioni di Debian
- Guida ad immagini di Debian Sarge
- Eseguibile .EXE per installare Debian
|
||
---|---|---|
|
|
---|---|
BSD | FreeBSD · NetBSD · OpenBSD · DragonFly BSD · DesktopBSD · PC-BSD · FreeNAS · m0n0wall · pfSense |
GNU/Linux (lista) | Arch Linux · Debian · Fedora · Gentoo · Knoppix · Mandriva · Red Hat Linux · Slackware · OpenSUSE · Ubuntu |
Mac OS | System 5 · 6 · 7 · 8 · 9 · Mac OS X · .0 -.1 · .2 · .3 · .4 · .5 · Server |
MS-DOS Microsoft Windows |
1.0 · 2 · 3.x · 95 · 98 · Me · NT · 3.5x · 4.0 · 2000 · XP · 2003 - FLP · Vista |
WebOS | Attolo · Desktoptwo · Divine · eyeOS · Goowy · LFS Desktop · myGoya · Oos · Purefect · ROBIN · SSOE · Xindesk · YouOS |
Altri | AmigaOS · AROS · BeOS · Inferno · LynxOS · Haiku OS · OS/2 · QNX · Solaris · Unix · Minix · MorphOS · MVS · I5/OS · Plan 9 · ReactOS · SkyOS · VMS · Zeta · FreeDOS |
- Portale Software libero: accedi alle voci di Wikipedia che parlano di Software libero