Arch compared to other distributions (Italiano)
Questa pagina tenta di tracciare un confronto tra Arch Linux e altre popolari distribuzioni GNU/Linux e i sistemi operativi UNIX-like. I riassunti che seguono sono brevi descrizioni che possono aiutare una persona a decidere se Arch Linux sia adatta alle proprie esigenze. Sebbene le recensioni e le descrizioni possano essere utili, l'esperienza diretta è invariabilmente il modo migliore per confrontare le distribuzioni.
Per un confronto più completo consultare Wikipedia:Comparison of operating systems e Wikipedia:Comparison of Linux distributions.
In tutto quanto segue, viene confrontata solo Arch Linux con le altre distribuzioni. I port della comunità che supportano architetture diverse da x86_64 sono elencati tra le distribuzioni basate su Arch.
Basate sui sorgenti
Le distribuzioni basate sui sorgenti sono altamente portabili, offrendo il vantaggio di controllare e compilare l'intero sistema operativo e le applicazioni per una particolare architettura di macchina e schema di utilizzo, con lo svantaggio della natura dispendiosa in termini di tempo della compilazione dei sorgenti. Il sistema base di Arch e tutti i pacchetti sono compilati solo per l'architettura x86_64.
CRUX
- CRUX è una distribuzione leggera che si concentra sul principio KISS. CRUX ha ispirato Judd Vinet nella creazione di Arch.
- CRUX utilizza script di inizializzazione in stile BSD, mentre Arch utilizza systemd.
- Mentre Arch utilizza un sistema di rilascio rolling release, CRUX ha rilasci più o meno annuali.
- Entrambi offrono sistemi simili ai ports e, come i *BSD, entrambi forniscono un ambiente di base su cui costruire.
- Arch dispone di pacman, che si occupa della gestione dei pacchetti binari del sistema e funziona perfettamente con l'Arch Build System. CRUX utilizza un sistema contribuito dalla comunità chiamato prt-get che, in combinazione con il proprio sistema di port, gestisce la risoluzione delle dipendenze, ma compila tutti i pacchetti dai sorgenti (sebbene l'installazione base di CRUX sia binaria).
- Sia Arch che CRUX supportano ufficialmente solo l'architettura x86_64.
- Arch dispone di un'ampia gamma di repository di pacchetti binari oltre all'Arch User Repository. CRUX fornisce un sistema di port ufficialmente supportato più ridotto, oltre a un repository della comunità relativamente modesto.
LFS
- LFS (o Linux From Scratch) esiste semplicemente come documentazione. Il libro istruisce l'utente su come ottenere il codice sorgente per un set di pacchetti base minimi per un sistema GNU/Linux funzionante, e su come compilarlo, patcharlo e configurarlo manualmente da zero. LFS è il massimo del minimalismo e offre un eccellente processo educativo per la costruzione e la personalizzazione di un sistema di base.
- LFS non fornisce repository online: i sorgenti vengono ottenuti, compilati e installati manualmente (esistono molti metodi manuali per la gestione dei pacchetti, menzionati in LFS Hints). Di conseguenza LFS non ha altri manutentori di pacchetti oltre all'utente, a meno che non si stia costruendo il proprio LFS in team con altri. Ciò significa che bisogna testare tutti i pacchetti in proprio. Può anche essere difficile correggere le vulnerabilità di sicurezza in modo tempestivo.
- Arch fornisce questi stessi pacchetti, alcuni strumenti extra e il potente gestore di pacchetti pacman come sistema di base, già compilato per x86_64. Insieme al sistema base minimo di Arch, la comunità e gli sviluppatori di Arch forniscono e mantengono molte migliaia di pacchetti binari installabili tramite pacman, oltre agli script di compilazione PKGBUILD da utilizzare con l'Arch Build System.
- LFS offre di default la scelta tra sysvinit o systemd.
- Judd Vinet ha costruito Arch da zero e poi ha scritto pacman in C. Storicamente Arch è stata a volte descritta in modo scherzoso come "Linux, con un buon gestore di pacchetti".
Gentoo Linux
- Sia Arch Linux che Gentoo Linux sono sistemi rolling release, che rendono i pacchetti disponibili alla distribuzione poco tempo dopo il loro rilascio in upstream.
- Per impostazione predefinita, i pacchetti Gentoo e il sistema base sono costruiti direttamente dal codice sorgente in base alle USE flag specificate dall'utente e alle flag del compilatore.
- Da dicembre 2023 Gentoo ha iniziato a offrire un repository di pacchetti binari opzionale per alcune architetture CPU.
- Arch fornisce un sistema ports-like per la creazione di pacchetti dai sorgenti, sebbene il sistema base di Arch sia progettato per essere installato come binario x86_64 precompilato.
- Questo rende generalmente Arch più veloce da installare e aggiornare e consente a Gentoo di essere più sistematicamente personalizzabile.
- Arch supporta solo x86_64 mentre Gentoo supporta ufficialmente molte più architetture.
- Gli strumenti ufficiali di Gentoo per la gestione dei pacchetti e del sistema tendono ad essere un po' più complessi e "potenti" di quelli forniti da Arch e alcune caratteristiche che sono al centro di Gentoo (USE flags, SLOTs, ecc.) non hanno un equivalente diretto in Arch Linux. Parte di ciò è dovuto al fatto che Arch è principalmente una distribuzione binaria, ma anche le differenze nella filosofia di progettazione giocano un ruolo importante, con Arch che assume una posizione più ferma a favore della semplicità architetturale ed evita la sovra-ingegnerizzazione.
- A differenza del gestore di pacchetti pacman di Arch, Portage (Emerge) di Gentoo può essere installato come Gentoo Prefix. Ciò consente a Portage di funzionare come gestore di pacchetti secondario in altre distribuzioni GNU/Linux (come il gestore dei pacchetti Guix).
- A differenza di Arch, Gentoo fornisce supporto ufficiale per systemd, OpenRC e altri sistemi di inizializzazione. Se a proprio agio con systemd, gli utenti Gentoo si sentiranno generalmente a loro agio anche con la maggior parte degli altri aspetti di Arch.
- Poiché sia l'installazione di Gentoo che quella di Arch includono solo un sistema base, entrambe sono considerate altamente personalizzabili e pongono l'accento sulla scelta dell'utente.
GNU Guix System
- GNU Guix System è stato ispirato da NixOS in modo simile a come Arch è stata ispirata da CRUX.
- Sia Arch Linux che Guix System sono distribuzioni rolling release, rendendo i pacchetti disponibili alla distribuzione in poco tempo dal rilascio upstream. Guix System è tuttavia principalmente una distribuzione basata sui sorgenti (sebbene esistano binari pre-costruiti chiamati "substitutes"), mentre Arch è principalmente una distribuzione binaria.
- Arch utilizza pacman come gestore di pacchetti, mentre Guix System utilizza guix, che supporta funzionalità di pacchettizzazione sperimentali non presenti in altre distribuzioni e può essere utilizzato come gestore di pacchetti secondario su altre distribuzioni GNU/Linux.
- Arch supporta solo x86_64, mentre Guix System supporta ufficialmente diverse architetture.
- Arch utilizza systemd come sistema di inizializzazione, mentre Guix System utilizza GNU Shepherd.
- Guix System rompe con molti concetti tradizionali di Unix, incluso il Filesystem Hierarchy Standard. Per esempio, molti file che nelle distribuzioni tradizionali sono sparsi in directory diverse, in Guix System si troveranno da qualche parte sotto
/gnu/store/. - Arch potrebbe occasionalmente includere software non libero (spesso driver), mentre Guix System include solo software libero ed è approvato dalla Free Software Foundation, sebbene esistano repository alternativi che forniscono software non libero.
- Arch si aspetta che l'utente configuri direttamente i pacchetti software installati, mentre Guix System incoraggia una configurazione globale del sistema in Guile Scheme, che a sua volta istanzia i file di configurazione.
Generali
Queste distribuzioni offrono un'ampia gamma di vantaggi e punti di forza e possono servire per la maggior parte degli utilizzi di un sistema operativo.
Debian
- Debian è la più grande distribuzione Linux upstream con una comunità più vasta e dispone di rami stable, testing e unstable, offrendo centinaia di migliaia di pacchetti. Il numero di pacchetti binari di Arch disponibili è più modesto; tuttavia, includendo l'AUR, le quantità sono paragonabili.
- Debian ha una posizione più decisa sul software libero ma include comunque software non libero nei suoi repository non-free. Arch è più permissiva, e quindi inclusiva, riguardo ai pacchetti non liberi come definiti da GNU.
- Debian si concentra su test rigorosi del ramo Stable, che viene "congelato" e supportato fino a cinque anni. I pacchetti Arch sono più aggiornati rispetto a Debian Stable, essendo più paragonabili al ramo Debian Unstable, e non ha un programma di rilascio fisso.
- Debian è disponibile per molte architetture, mentre Arch è solo x86_64.
- Arch fornisce un supporto più rapido per la creazione di pacchetti personalizzati e installabili da fonti esterne, con un sistema di compilazione pacchetti ports-like. Debian non offre un sistema ports, affidandosi invece ai suoi ampi repository binari.
- Il sistema di installazione di Arch offre solo una base minima, esposta in modo trasparente durante la configurazione del sistema, mentre i metodi di Debian, come l'uso dei task di apt per installare gruppi pre-selezionati di pacchetti, offrono un approccio configurato più automaticamente così come diversi metodi alternativi di installazione.
- Arch generalmente pacchettizza le librerie software insieme ai loro file header, mentre in Debian i file header devono essere scaricati separatamente.
- Arch riduce al minimo l'applicazione di patch, evitando così problemi che gli sviluppatori a monte non sono in grado di revisionare, mentre Debian applica patch ai suoi pacchetti più generosamente per un pubblico più ampio.
Fedora
- Fedora Linux è la distribuzione della community che funge da base di sviluppo per Red Hat® Enterprise Linux. Red Hat è lo sponsor principale del progetto, ma migliaia di sviluppatori indipendenti contribuiscono a Fedora. I pacchetti e i progetti vengono rilasciati su Fedora e, attraverso il proprio set distinto di test e processi di garanzia della qualità, tali funzionalità migrano a CentOS Stream e infine vengono incorporate in una versione di Red Hat Enterprise Linux; alcune alla fine vengono adottate da altre distribuzioni. Arch non ha rilasci fissi e non funge da ramo per un'altra distribuzione, anche se molte altre distribuzioni sono basate su Arch Linux (es. SteamOS per lo Steam Deck).
- I pacchetti Fedora usano il formato RPM con il gestore pacchetti DNF. Arch usa pacman per gestire i suoi pacchetti. Molti pacchetti di entrambi i progetti, in particolare gli ambienti desktop, sono descritti come "vanilla" e senza personalizzazioni.
- Fedora non include software non libero nei repository ufficiali a causa della sua dedizione al software libero, sebbene siano disponibili repository di terze parti per questi pacchetti. Arch è più permissiva nei confronti del software non libero, lasciando il discernimento all'utente.
- Fedora utilizza l'installer grafico Anaconda e offre molte immagini di installazione, inclusa un'opzione per esperti che facilita l'installazione dal sistema base fino a un ambiente desktop completo a scelta. Le "spins" di Fedora forniscono anche assortimenti alternativi di specifici ambienti desktop. Arch, d'altra parte, è progettata per essere assemblata da una riga di comando del sistema base minimo e fornisce script semplici destinati a facilitare il processo.
- Fedora ha un ciclo di rilascio pianificato di circa 6 mesi, ma supporta ufficialmente gli aggiornamenti di versione con il plugin dnf system-upgrade. Arch è un sistema rolling-release.
- Arch dispone di un sistema ports, mentre Fedora no.
- Sia Arch che Fedora sono rivolte a utenti esperti e sviluppatori. Entrambe incoraggiano fortemente i loro utenti a contribuire allo sviluppo del progetto.
- Fedora ha ottenuto molto riconoscimento dalla comunità per l'integrazione di SELinux, per i pacchetti compilati GCJ (per rimuovere la necessità di JRE di Oracle) e per il prolifico contributo upstream. Red Hat, e quindi gli sviluppatori di Fedora per estensione, contribuiscono con la più alta percentuale di lavoro al codice del kernel Linux, se comparati a qualsiasi altro progetto.
- Arch Linux fornisce quella che è ampiamente considerata la wiki di distribuzione più accurata e completa. La wiki di Fedora è usata nel senso originale della parola "wiki" o più come modo per scambiare informazioni tra sviluppatori e tester in modo rapido. Non è pensata per essere una base di conoscenza per l'utente finale come quella di Arch. La wiki di Fedora somiglia a un sistema di tracciamento dei problemi o a una wiki aziendale.
Slackware
- Slackware utilizza script di inizializzazione in stile BSD, mentre Arch utilizza systemd.
- Arch fornisce un sistema di gestione dei pacchetti con pacman che, a differenza degli strumenti standard di Slackware, offre la risoluzione automatica delle dipendenze e consente aggiornamenti di sistema più automatizzati. Gli utenti Slackware in genere preferiscono il loro metodo di risoluzione manuale, motivando la scelta con il livello di controllo sul sistema che esso garantisce, oltre che con l'eccellente dotazione di librerie e dipendenze preinstallate in Slackware.
- Arch è un sistema rolling-release. Slackware è vista come più conservatrice nel suo ciclo di rilascio, preferendo pacchetti stabili e testati. Arch è più "bleeding-edge" sotto questo aspetto.
- Arch Linux fornisce molte migliaia di pacchetti binari nei suoi repository ufficiali, mentre i repository ufficiali di Slackware sono più modesti.
- Arch offre l'Arch Build System, un vero e proprio sistema in stile ports, e anche l'AUR, una vastissima raccolta di PKGBUILD forniti dagli utenti. Slackware offre un sistema simile, sebbene più ridotto, su slackbuilds.org, che è un repository semi-ufficiale di Slackbuild, ovvero script analoghi ai PKGBUILD di Arch. Gli utenti Slackware si troveranno generalmente a proprio agio con la maggior parte degli aspetti di Arch.
Adatte ai principianti
A volte chiamate "distro per neofiti", le distribuzioni adatte ai principianti condividono molte somiglianze, sebbene Arch sia molto diversa da esse. Arch può essere una scelta migliore se si vuole imparare a conoscere GNU/Linux partendo da una piccola base, poiché un'installazione di Arch installa pochi pacchetti al confronto. Le specifiche differenze tra le distribuzioni sono descritte qui sotto.
Ubuntu
- Ubuntu è una popolare distribuzione basata su Debian sponsorizzata commercialmente da Canonical Ltd., mentre Arch è un sistema sviluppato indipendentemente e costruito da zero.
- I due progetti hanno obiettivi molto diversi e si rivolgono a una base di utenti diversa. Arch è progettata per utenti che desiderano un approccio fai-da-te, mentre Ubuntu fornisce un sistema pre-configurato. Arch presenta un design più semplice fin dall'installazione base, affidandosi all'utente per personalizzarlo secondo le proprie esigenze specifiche. Molti utenti Arch hanno iniziato con Ubuntu e alla fine sono passati ad Arch.
- Lo sviluppo di Arch non è orientato verso alcuna interfaccia utente particolare oltre a ciò che la sua comunità supporta. Inoltre, la natura commerciale di Canonical ha portato ad alcune decisioni controverse, come l'inclusione di pubblicità nel menu Dash di Unity, lo sviluppo e l'integrazione di Snap e dello Snap Store a sorgente chiuso, e la raccolta di dati degli utenti. Arch è un progetto indipendente, guidato dalla comunità, senza fini commerciali.
- Ubuntu si muove tra rilasci separati ogni 6 mesi, mentre Arch è un sistema rolling-release.
- Arch offre un sistema di compilazione pacchetti ports-like e l'Arch User Repository, dove gli utenti possono condividere i pacchetti sorgente per il gestore dei pacchetti pacman. Ubuntu utilizza i più complessi apt e Snap, e consente la ridistribuzione di pacchetti binari tramite il Personal Package Archive.
- Anche le due comunità differiscono per alcuni aspetti. La comunità di Arch è molto più piccola e i suoi membri sono fortemente incoraggiati a contribuire alla distribuzione. Al contrario, la comunità di Ubuntu è relativamente grande e può quindi tollerare una percentuale molto più alta di utenti che non contribuiscono attivamente allo sviluppo, alla creazione dei pacchetti o alla manutenzione dei repository.
Linux Mint
- Linux Mint è nata come derivata di Ubuntu e successivamente ha aggiunto la LMDE (Linux Mint Debian Edition) che è invece basata su Debian. Di contro, Arch è una distribuzione indipendente che si affida al proprio sistema di compilazione e ai propri repository.
- Mint include diversi strumenti grafici per una manutenzione più semplice, chiamati MintTools. Arch fornisce solo semplici strumenti da riga di comando come pacman e lascia che la gestione del sistema sia organizzata dall'utente.
- Le nuove versioni di Mint vengono rilasciate ogni sei mesi, circa un mese dopo Ubuntu. Ogni rilascio si basa sulla più recente versione LTS di Ubuntu ed è supportato per cinque anni. Linux Mint Debian Edition (LMDE) è invece basata su Debian Stable e riceve solo aggiornamenti per i pacchetti specifici di Mint e aggiornamenti di sicurezza. Arch è invece una distribuzione interamente rolling-release.
openSUSE
openSUSE è nata dall'originale SUSE Linux ed è sponsorizzata da SUSE (produttrice di SUSE Enterprise Linux). SUSE Enterprise Linux Desktop (SLED) si basa su openSUSE Tumbleweed e condivide una base di codice comune con openSUSE Leap.
- openSUSE utilizza il gestore di pacchetti Zypp (zypper da riga di comando), il formato di pacchetto RPM e il suo rinomato strumento di configurazione con interfaccia grafica YaST2. Arch utilizza pacman per gestire i pacchetti .tar.zst e non offre strumenti di configurazione grafici.
- openSUSE offre due diverse versioni:
- Leap è la versione di openSUSE con supporto a lungo termine e caratterizzata da rilasci separati.
- Tumbleweed è la versione rolling release di openSUSE.
- Al contrario, Arch segue rigorosamente un modello rolling-release e non offre versioni di rilascio separate.
- Anziché un ambiente desktop completo, Arch offre l'installazione di un sistema di base minimo. openSUSE potrebbe quindi essere più indicata per gli utenti che desiderano un ambiente più orientato all'interfaccia grafica, alla configurazione automatica o a funzionalità pronte all'uso, pur consentendo la personalizzazione possibile su tutte le distribuzioni.
Mandriva/Mageia
Mandriva Linux (precedentemente Mandrake Linux) è stata creata nel 1998 con l'obiettivo di rendere GNU/Linux facile da usare per tutti.
- mandriva è basata su RPM e usa il gestore pacchetti urpmi.
- Mageia è un fork di Mandriva creato da ex dipendenti che si oppone alla posizione commerciale della distribuzione madre, essendo un progetto no-profit guidato dalla comunità.
Arch adotta un approccio più semplice rispetto a Mandriva o Mageia, essendo basata su testo e affidandosi a una configurazione più manuale, ed è rivolta a utenti da intermedi ad avanzati.
Le BSD
- Le BSD condividono un'origine comune e derivano direttamente dal lavoro svolto alla UC Berkeley, con l'obiettivo di produrre un sistema UNIX liberamente ridistribuibile e gratuito. Non sono distribuzioni GNU/Linux, quanto piuttosto sistemi operativi UNIX-like, derivati dal codice originale AT&T UNIX.
- Arch e le BSD condividono il concetto di un sistema base e di un sistema port strettamente integrati. Tuttavia, a differenza delle distribuzioni GNU/Linux come Arch, il kernel delle BSD e i programmi dello spazio utente (come la shell e le utility principali come ls, cp, cat e ps) sono sviluppati insieme in un unico repository sorgente.
- La licenza BSD è permissiva, a differenza della GPL, che ha la clausola che le derivate debbano essere rilasciate sotto la stessa licenza. Arch è rilasciata sotto licenza GPL.
- Per ulteriori informazioni sulle varianti BSD si veda Wikipedia:Comparison of BSD operating systems.
Ulteriori risorse
- [DistroWatch https://distrowatch.com/] - Linux distributions news and reviews