aboutsummaryrefslogtreecommitdiff
path: root/guides/repository/02-funzionamento.rst
diff options
context:
space:
mode:
Diffstat (limited to 'guides/repository/02-funzionamento.rst')
-rw-r--r--guides/repository/02-funzionamento.rst86
1 files changed, 86 insertions, 0 deletions
diff --git a/guides/repository/02-funzionamento.rst b/guides/repository/02-funzionamento.rst
new file mode 100644
index 0000000..9d60961
--- /dev/null
+++ b/guides/repository/02-funzionamento.rst
@@ -0,0 +1,86 @@
+Repository e distribuzioni
+==========================
+
+Quando si "installa Linux", si sta generalmente installando una
+distribuzione, ovvero l'insieme di un sistema operativo GNU/Linux,
+un'interfaccia utente e dei programmi applicativi che girano sullo
+stesso.
+
+Parte integrante di una distribuzione sono i cosidetti repository,
+ovvero delle raccolte di software in pacchetti di formato specifico
+e pronti per l'installazione, come ad esempio .deb per Debian
+ed Ubuntu, o .rpm per Fedora.
+
+L'accesso principale a questi repository avviene generalmente
+tramite un gestore di pacchetti, ovvero un insieme di programmi
+in grado di gestire ricerca, download, installazione e
+rimozione di tali programmi; alcuni esempi sono apt-get e i
+suoi *front-end* per i .deb o yum per i .rpm.
+
+Le distribuzioni offrono generalmente diversi repository a cui
+accedere tramite gestore di pacchetti; generalmente viene fatta
+una distinzione tra programmi di base, sui quali si effettua
+la maggior parte dei test, e programmi aggiuntivi, meno controllati.
+Ad esempio ubuntu suddivide i programmi in main ed universe.
+Un altro repository potrebbe poi contenere programmi scaricabili
+e distribuibili, ma con restrizioni di licenza che li rendono
+non liberi, ad esempio restricted e multiverse di ubuntu,
+o non-free di debian.
+
+È poi possibile installare programmi di terze parti, sia tramite
+repository non ufficiali che tramite download diretto del pacchetto;
+questo può però comportare rischi maggiori, e richiede accortezza
+nel verificare l'origine del programma e la sua compatibilità
+con il resto del sistema.
+
+Versioni ed aggiornamenti
+-------------------------
+
+La gestione delle versioni dei programmi e librerie presenti nei
+repository è poi uno dei punti nei quali si
+notano maggiori differenze tra una distribuzione e l'altra.
+
+Innanzitutto si ha la distinzione tra *rolling release* e
+*versioned release*: la prima consiste nell'aggiornare continuamente
+i pacchetti indipendentemente gli uni dagli altri, la seconda
+nel rilasciare periodicamente nuove versioni nelle quali si aggiorna
+tutto il sistema e limitarsi a bugfix ed aggiornamenti di sicurezza
+tra una release e l'altra.
+
+Il sistema a versioni offre in generale maggiore stabilità,
+dato che gli aggiornamenti vengono testati prima di essere rilasciati
+al pubblico, ed è usato dalle distribuzioni più diffuse come
+Debian, Fedora ed Ubuntu; il suo principale svantaggio è il ritardo
+con cui si hanno a disposizione le nuove versioni dei pacchetti, soprattutto
+per quello che riguarda programmi dallo sviluppo molto rapido.
+
+Il sistema delle *rolling release*, al contrario, permette di avere
+un sistema sempre aggiornato, al prezzo di tollerare eventuali
+problemi in fase di installazione delle nuove versioni: per
+questo motivo viene usato praticamente solo in distribuzioni
+per smanettoni come Gentoo o Arch, i cui utenti non hanno problemi
+ad incontrare e risolvere malfunzionamenti anche gravi.
+
+Un ulteriore distinzione sta nella frequenza e nella gestione dei rilasci
+di nuove versioni: distribuzioni come Ubuntu e Fedora stabiliscono
+un calendario abbastanza rigido nei quali i sei mesi di intervallo
+tra una versione e l'altra sono suddivisi in una fase di sviluppo in
+cui cercare di aggiungere nuove funzionalità ed una fase di testing
+nella quale risolvere i problemi, eventualmente rinunciando a
+quanto non è stato possibile far funzionare in tempo.
+Distribuzioni come Debian, al contrario, basano la suddivisione tra
+le fasi in base alle funzionalità: quando lo sviluppo ha raggiunto gli
+obiettivi che ci si era prefissi lo si blocca e si passa alla fase
+di testing e risoluzione dei problemi, quando infine tutti i bug
+importanti sono stati chiusi si procede con il rilascio.
+Anche qui si ha un compromesso tra maggiore regolarità ed aggiornamento
+nel primo caso e maggiore stabilità nel secondo.
+
+Un ultima distinzione si ha infine nella durata del supporto per le versioni
+rilasciate in passato: se ad esempio Fedora fornisce aggiornamenti
+di sicurezza solo per l'ultima versione, Ubuntu le mantiene
+da 9 mesi a 5 anni, a seconda delle versioni e Debian offre supporto
+fino ad un anno dopo l'uscita della versione stabile successiva,
+in modo da venire incontro anche alle esigenze di sistemi server,
+dove gli aggiornamenti possono causare problemi maggiori.
+