Le distribuzioni principali di Linux

Il kernel Linux è il cuore del sistema operativo. Una distribuzione Linux completa è costituita dal kernel più una serie di altri strumenti software per le operazioni relative ai file, la gestione degli utenti e la gestione dei pacchetti software. Ognuno di questi strumenti fornisce una parte del sistema completo. Ogni strumento è spesso un progetto separato, con i suoi sviluppatori che lavorano per perfezionare quel pezzo del sistema.

Esempi di strumenti forniti dalle distribuzioni sono il compilatore C/C++, il debugger gdb, le librerie di sistema principali con cui le applicazioni devono collegarsi per poter funzionare, l'interfaccia di basso livello per disegnare la grafica sullo schermo, così come l'ambiente desktop di livello superiore e il sistema per l'installazione e l'aggiornamento dei vari componenti, incluso il kernel stesso.  Tutte le distribuzioni sono dotate di una suite piuttosto completa di applicazioni già installate.

Ci sono tre principali distribuzioni, famiglie, di Linux attualmente esistenti: Red Hat, SUSE, Debian

Finché ci saranno programmatori talentuosi che impiegheranno le loro energie, continueranno a cambiare ed a crescere. Come per ogni altro campo se le persone vedono un bisogno sviluppano configurazioni e utilità speciali per rispondere a questo bisogno. 

A volte questo sforzo crea una nuova distribuzione Linux.

La grande varietà di distribuzioni Linux è progettata per soddisfare molti pubblici e organizzazioni diverse, in base alle loro specifiche esigenze e gusti. Tuttavia, le grandi organizzazioni, come le aziende e le istituzioni governative e altre entità, tendono a scegliere le principali distribuzioni.

La famiglia Red Hat

Red Hat logo

Red Hat Enterprise Linux (RHEL) è a capo della famiglia che comprende CentOS, Fedora e Oracle Linux.

Fedora ha una stretta relazione con RHEL e contiene molto più software della versione enterprise di Red Hat. Una delle ragioni è che una comunità diversificata è coinvolta nella costruzione di Fedora, con molti collaboratori che non lavorano per Red Hat. Inoltre, viene utilizzato come piattaforma di test per le future release di RHEL.

La versione base di CentOS è anche virtualmente identica a RHEL, la più popolare distribuzione Linux in ambienti enterprise.

Alcuni punti chiave della famiglia Red Hat sono:

  • Fedora serve come piattaforma di test per RHEL.
  • CentOS è un clone stretto di RHEL, mentre Oracle Linux è per lo più una copia con alcune modifiche (infatti CentOS fa parte di Red Hat dal 2014).
  • Utilizza i gestori di pacchetti yum e dnf basati su RPM yum (trattati in dettaglio più avanti) per installare, aggiornare e rimuovere i pacchetti nel sistema.
  • RHEL è ampiamente utilizzato dalle imprese che ospitano i propri sistemi.

La famiglia SUSE

SUSE logo

La relazione tra SUSE (SUSE Linux Enterprise Server (SLES) ) e openSUSE è simile a quella descritta tra RHEL, CentOS e Fedora.

openSUSE è la distribuzione di riferimento per la famiglia SUSE, in quanto è disponibile per gli utenti finali senza alcun costo. Poiché i due prodotti sono estremamente simili, il materiale che copre openSUSE può essere applicato a SLES con pochi problemi.

Di seguito sono elencati alcuni dei fatti chiave della famiglia SUSE:

  • SUSE Linux Enterprise Server (SLES) è a monte per openSUSE.
  • Utilizza il gestore di pacchetti zypper basato su RPM per installare, aggiornare e rimuovere i pacchetti nel sistema.
  • Include l'applicazione YaST (Yet Another Setup Tool) per l'amministrazione del sistema.
  • SLES è ampiamente utilizzato nel commercio al dettaglio e in molti altri settori.

La famiglia Debian

Debian logo

La distribuzione Debian è a monte per diverse altre distribuzioni, tra cui Ubuntu. A sua volta, Ubuntu è a monte per Linux Mint e una serie di altre distribuzioni. 

È comunemente usata sia sui server che sui computer desktop. Debian è un puro progetto di comunità open source (non è di proprietà di alcuna società) e ha una forte attenzione alla stabilità.

Debian fornisce di gran lunga il più grande e completo repository di software ai suoi utenti di qualsiasi distribuzione Linux.

Ubuntu mira a fornire un buon compromesso tra stabilità a lungo termine e facilità d'uso. 

Dal momento che Ubuntu ottiene la maggior parte dei suoi pacchetti dal ramo stabile di Debian, ha anche accesso ad un repository software molto grande. 

Ubuntu è un marchio registrato di Canonical Ltd.

Di seguito sono elencati alcuni fatti chiave della famiglia Debian:

  • La famiglia Debian è a monte per Ubuntu ed Ubuntu è a monte per Linux Mint e altri.
  • Utilizza il gestore di pacchetti APT basato su DPKG (usando apt, apt-get, apt-cache, ecc) per installare, aggiornare e rimuovere i pacchetti nel sistema.
  • Ubuntu è stato ampiamente utilizzato per le implementazioni cloud.
  • Anche se Ubuntu è costruito sopra Debian ed è basato su GNOME, differisce visivamente dall'interfaccia di Debian standard, così come da altre distribuzioni.

Quale distribuzione scegliere?

Supponiamo che tu intenda acquistare una macchina nuova. Quali fattori devi considerare per fare una scelta corretta? I requisiti che tu devi prendere in considerazione includono le dimensioni, il tipo di motore e di alimentazione, il tuo budget, i servizi post-vendita, ecc. Allo stesso modo, determinare quale distribuzione distribuire richiede anche una pianificazione.

Ecco alcune domande a cui vale la pena pensare prima di decidere una distribuzione:

  • Qual è la funzione principale del sistema (server o desktop)?
  • Quali tipi di pacchetti sono importanti per te? Per esempio, server web, elaborazione testi, ecc.
  • Quanto spazio su disco rigido è richiesto e quanto è disponibile? Per esempio, quando si installa Linux su un dispositivo embedded, lo spazio è solitamente limitato.
  • Con quale frequenza vengono aggiornati i pacchetti?
  • Quanto dura il ciclo di supporto per ogni release? Per esempio, le release LTS hanno un supporto a lungo termine.
  • Su quale hardware stai girando? Per esempio, potrebbe essere X86, ARM, PPC, ecc.
  • Hai bisogno di stabilità a lungo termine o hai bisogno di un sistema più all'avanguardia che utilizzi il software più recente?
Distribuzioni Linux in base all'utilizzo
Distribuzioni Linux in base all'utilizzo

Installare Linux: consigli utili

Pianificare

Il layout della partizione deve essere deciso al momento dell'installazione. Può essere difficile cambiarlo in seguito. Mentre i sistemi Linux gestiscono più partizioni montandole in punti specifici del filesystem, si può sempre modificare in seguito, è sempre più facile cercare di farlo in modo corretto all'inizio.

Quasi tutte le distribuzioni forniscono un layout predefinito, con tutto lo spazio dedicato ai file normali su una grande partizione e una più piccola partizione di swap, o con partizioni separate per alcune aree sensibili allo spazio come /home e /var. Potresti aver bisogno di sovrascrivere le impostazioni predefinite e fare qualcosa di diverso se hai esigenze particolari, o se vuoi usare più di un disco.

Partizioni Linux Hard Disk
Partizioni Linux Hard Disk

Scelte del software

Tutte le installazioni includono il software minimo indispensabile per eseguire una distribuzione Linux.

La maggior parte fornisce anche opzioni per aggiungere categorie di software. Le applicazioni più comuni (come il browser web Firefox e la suite per ufficio LibreOffice), gli strumenti per sviluppatori e altri servizi popolari sono di solito inclusi. Inoltre, per qualsiasi sistema con un desktop grafico, un desktop (come GNOME o KDE) è installato di default.

Tutte le famiglie hanno impostato alcune caratteristiche di sicurezza iniziali sul nuovo sistema. Un passo fondamentale consiste nell'impostare la password per il superutente (root) e nell'impostare un utente iniziale. In alcuni casi (come Ubuntu), viene impostato solo un utente iniziale, il login diretto di root non è configurato e l'accesso di root richiede il login prima come utente normale e poi usando il comando sudo.

Alcune distribuzioni installeranno anche framework di sicurezza più avanzati, come SELinux o AppArmor. Per esempio, tutti i sistemi basati su Red Hat, inclusi Fedora e CentOS, usano sempre SELinux di default, invece Ubuntu viene fornito con AppArmor pronto e funzionante.

Installare la sorgente

Come altri sistemi operativi, le distribuzioni Linux sono fornite su supporti rimovibili come unità USB e CD o DVD.

La maggior parte delle distribuzioni Linux supporta anche l'avvio di una piccola immagine e il download del resto del sistema attraverso la rete. Queste piccole immagini sono utilizzabili su supporti come una penna USB.

Molti installatori possono fare un'installazione completamente automatica, usando un file di configurazione per specificare le opzioni di installazione. Questo file è chiamato file Kickstart per i sistemi basati su Red Hat, AutoYAST per i sistemi basati su SUSE e un file Preseed per i sistemi basati su Debian.

Ogni distribuzione fornisce la propria documentazione e gli strumenti per la creazione e la gestione di questi file.

Processo

L'effettivo processo di installazione è abbastanza simile per tutte le distribuzioni.

Dopo l'avvio dal supporto di installazione, il processo si avvia e ti pone delle domande su come il sistema dovrebbe essere impostato. Queste domande vengono saltate se viene fornito un file di installazione automatico. Dopodiché l'installazione viene eseguita.

Infine il computer si riavvia sul sistema appena installato. Su alcune distribuzioni, dopo il riavvio del sistema, vengono poste ulteriori domande.

Nella maggior parte dei casi si ha la possibilità di scaricare e installare aggiornamenti come parte del processo di installazione; questo richiede l'accesso a Internet. Altrimenti il sistema usa il suo normale meccanismo di aggiornamento per recuperare gli aggiornamenti dopo l'installazione.

Ci sono dei metodi alternativi per installare Linux senza sovrascrivere i dati esistenti. Questi metodi alternativi sono:

  1. Re-partizionare il tuo disco fisso per liberare abbastanza spazio per permettere l'installazione dual boot (side-by-side) di Linux, insieme al tuo attuale sistema operativo.
  2. Utilizzando un programma di hypervisor della macchina host (come i prodotti VMWare o Oracle Virtual Box) per installare una macchina virtuale Linux client.
  3. Avviare e utilizzare un Live CD o una chiavetta USB e non scrivere affatto sul disco rigido.

Il primo metodo può risultare più complicato e dovrebbe essere fatto quando hai dimestichezza ed hai capito i passi necessari. Il secondo e il terzo metodo sono abbastanza sicuri e rendono difficile danneggiare il tuo sistema.