La struttura della Distribuzione
Versioni Compatibili Tutte le versioni supportate di Debian |
Introduzione
Debian ha un sistema di sviluppo particolare quanto unico: è infatti la sola ad avere tre suite diverse divise in base alle caratteristiche di stabilità: Stable, Testing, Unstable; ed un repository con pacchetti in fase di sviluppo: Experimental.
Ogni suite può essere identificata anche dal codename (nome in codice) associato a una data versione, ma la corrispondenza tra suite e codename si mantiene soltanto fino al successivo rilascio di Debian, in cui i pacchetti presenti in testing entrano a far parte della nuova stable, che ne eredita anche il codename. Fa eccezione unstable, il cui codename resta sempre Sid.
Se si accetta sia una suite che un codename si parla di release, un termine più generale e con altri significati, a seconda del contesto in cui è usato.
Una rapida sintesi
Oldstable: come si intuisce dal nome una vecchia stabile, supportata riguardo gli aggiornamenti per la sicurezza per un certo periodo di tempo in contemporanea alla stabile.
Stable: la suite stabile ufficiale che beneficia quotidianamente degli aggiornamenti riguardo alla sicurezza. Questa è la versione raccomandata per macchine di produzione e server. Può essere impiegata, abilitando i repository backports, anche per uso desktop.
Testing: la suite di sviluppo destinata a divenire la nuova Stable (secondo ultime fonti con cadenza biennale Debian News Links), anch'essa usufruisce degli aggiornamenti per la sicurezza, destinata ad un uso desktop (soggetta a qualche bug e per utenti non alle prime armi), ma sconsigliata per server e macchine di produzione.
Unstable (Sid): il titolo dice tutto! Qui si trovano i pacchetti più recenti ma che ancora non sono stati abbastanza testati per passare in testing, quindi in questa versione di sviluppo è possibile trovare molti pacchetti con bug. L'uso è riservato a coloro che vogliono testare pacchetti recenti per contribuire allo sviluppo di Debian e sanno a cosa vanno incontro. Per questo ramo non esistono immagini.
Experimental: questo è un repository e non una release, non esiste nessuna immagine e non ha nessun supporto.
Stable
Stable è la suite stabile di Debian. Nello sviluppo Debian, una release viene dichiarata stabile quando tutti i bug RC ad essa associati prima del rilascio sono zero.
Una volta rilasciata, viene aperto un repository speciale: security, che ha lo scopo di raccogliere gli aggiornamenti dei pacchetti presenti nella Stable corrente, per quanto riguarda il fattore sicurezza. Questi aggiornamenti, però, non riguardano la versione del pacchetto: infatti non ci saranno nuove versioni dei programmi disponibili, ma solo aggiornamenti di sicurezza (quindi applicazioni di patch, in linea di massima).
Anche se la cosa può sembrare inutile, non lo è: supponiamo di avere un sistema produttivo, basato su l'ultima Stable. L'aggiornamento di un programma alla versione successiva potrebbe comportare un po' di problemi:
- la struttura e/o la sintassi dei file di configurazione potrebbe subire dei cambiamenti, creando delle incompatibilità con le configurazioni valide per versioni precedenti;
- potrebbero essere presenti dei cambiamenti sostanziali alla struttura del pacchetto o del programma;
- potrebbero presentarsi dei bug non segnalati, a causa della 'giovane età' del pacchetto.
Anche se i punti sopra citati sembrano banali, non è così: una macchina di produzione deve essere solida e stabile, e visto che molto spesso è una ottima pratica avere in Cron le operazioni di aggiornamento, la probabilità che un aggiornamento automatico possa creare situazioni di instabilità o non funzionamento di un servizio non può essere accettato.
Questo è un motivo per cui, nella release Stable, ci sono solo aggiornamenti riguardanti bugfix.
Testing
La suite testing è spesso utilizzata in ambito Desktop da utenti che possiedono già una conoscenza di base sul funzionamento di Debian, visto che rappresenta il miglior compromesso tra stabilità e aggiornamento di pacchetti, in particolare quando non esistevano dei backports ufficiali per la stable. Per chi si avvicina a Debian (o a GNU/Linux in generale) per la prima volta è comunque consigliabile l'uso di una Debian stable, eventualmente ricorrendo ai backports, salvo si abbiano esigenze particolari. Questo consentirà di ridurre gli interventi sul sistema per la risoluzione di problemi e permetterà di imparare con calma il funzionamento di Debian.
Per installare la testing si legga questa guida.
Per passare dalla stable alla testing si legga il paragrafo "Passaggio da stable a testing" contenuto in quest'altra guida.
Il percorso dei pacchetti
I pacchetti, prima di entrare nella release di Testing compiono un tragitto per raggiungere un buon grado di maturità. Quando vengono creati, possono essere inseriti in Experimental, se hanno bisogno di test approfonditi e non sono considerati completamente stabili dall'autore, oppure possono essere inseriti in Unstable, pronti per essere testati dagli sviluppatori.
Perché un pacchetto venga incluso in Testing (sostituendo eventualmente quello più vecchio) :
- deve essere stato in Unstable per 10, 5 o 2 giorni, in funzione dell'urgenza dell'upload;
- deve essere stato compilato e deve essere aggiornato su tutte le architetture su cui sia stato compilato in Unstable;
- deve avere meno bug release-critical, o lo stesso numero, della versione corrente in Testing (si veda sotto per maggiori informazioni);
- tutte le sue dipendenze devono o essere soddisfatte dai pacchetti già in Testing, o essere soddisfatte dall'insieme di pacchetti che verranno installati nel contempo;
- l'operazione di installazione del pacchetto in Testing non dovrà danneggiare alcun pacchetto che sia già in Testing.
Da Testing a Stable
Quando la versione di Testing raggiunge un buon grado di maturità, avviene il passaggio da Testing a Stable. Prima di tutto viene dichiarata una situazione di freeze, in cui non è più possibile inserire nuove versioni di un pacchetto (a meno che non sia fondamentale per la correzione di qualche bug) ma solo correggere i bug riscontrati. Quando la versione di Testing verrà valutata come sufficientemente stabile, verrà rilasciata come Stable. Dopo il rilascio della Stable, la nuova Testing verrà ricreata secondo le normali regole a partire da Unstable.
Unstable
Unstable è la suite per gli sviluppatori, come indicato sul sito ufficiale Debian, e l'uso di questa release in ambito lavorativo (o comunque produttivo) può portare a degli inconvenienti o instabilità. È possibile, infatti, che a causa di qualche aggiornamento vengano introdotti dei bug che possano compromettere il normale funzionamento di qualche applicazione.
È inoltre possibile che, a causa dell'aggiornamento di alcune librerie o set di programmi, si possano creare delle situazioni di dipendenze non risolte che potrebbero rendere impossibile l'aggiornamento e/o l'installazione di alcuni pacchetti. Il consiglio è di non utilizzarla, a meno di non avere una certa dimestichezza e familiarità con il sistema Debian.
La sua immagine non è distribuita ufficialmente, per installarla si legga questa guida.
È divertente notare che la versione unstable di Debian mantiene sempre lo stesso codename, ossia Sid, il ragazzaccio!
Experimental
Experimental è un repository (e non una release) che contiene i pacchetti che sono in fase di testing da parte dei Debian Developers e che necessitano di lavoro prima di essere pronti per entrare in unstable. Pertanto non è autosufficiente e il repository è tipicamente usato assieme a quello di unstable/Sid.
Il repository è speciale anche perché i pacchetti non vengono mai installati in automatico, salvo siano presenti soltanto in experimental, e anche una volta installati non sono aggiornati in automatico. Si legga per maggiori informazioni questa sezione.
I nomi delle release
Una domanda diffusa tra gli utenti alle prime armi con Debian riguarda i nomi delle release; a prima vista, infatti, possono sembrare strani, ma la spiegazione è molto semplice: sono tutti nomi dei personaggi del film ToyStory.
Questa simpatica tradizione è stata iniziata da Bruce Perens con il rilascio di Debian 1.1 nel 1996. Perens, all'epoca Debian Project Leader, lavorava anche per Pixar.
Ecco l'elenco dei codename associati alle Debian Stable fino ad ora rilasciate:
|
Guida scritta da: MaXeR | Debianized 80% |
Estesa da: | |
Verificata da: | |
Verificare ed estendere la guida | Cos'è una guida Debianized |