Albero-genealogico-arch-Linux | Linuxiano.it
Privacy Policy

Albero-genealogico-arch-Linux

Arch Linux

Arch Linux è una distribuzione GNU/Linux con architettura i686 e x86-64, creata da Judd Vinet secondo la filosofia KISS (Keep It Simple, Stupid). Inizialmente ispirata a CRUX Linux, è conosciuta per essere leggera, veloce, estremamente scalabile e adattabile alle proprie esigenze.

Storia

Judd Vinet, un programmatore canadese, nei primi mesi del 2001 decise di creare una nuova distribuzione,chiamata Arch Linux,ispirandosi a Slackware,Polish Linux Distribution e soprattutto CRUX Linux.A questo progetto aggiunse un sistema di gestione dei pacchetti,che mancava alle distro precedentemente nominate,di modo che si potesse aggiungere, togliere ed eliminare i programmi sul PC con facilità. Tale programma, tuttora utilizzato nella distribuzione, venne chiamato Pacman.

Verso la fine del 2007, Judd Vinet si dimise da leader del team di sviluppo di Arch Linux e passò la distribuzione al programmatore statunitense Aaron Griffin, soprannominato Phrakture,il quale tuttora gestisce lo sviluppo della distribuzione.

Caratteristiche:

Proprio per la sua filosofia minimalista, l’installazione base non incorpora nessuno strumento di configurazione automatica, nessun ambiente desktop e nessun altro programma o tool che non sia strettamente necessario all’avvio del sistema; per questo non è indicata per i nuovi utenti di GNU/Linux o coloro che non vogliono avere a che fare con la shell di comando (terminale).

Alcuni tratti salienti della distribuzione sono:

  • leggerezza: per questo motivo sono state eliminate alcune porzioni di sistema come /usr/doc e le pagine info, considerate inutili, dato che le stesse informazioni possono essere ottenute sulla Rete.
  • semplicità: il sistema di init usato da Arch è fortemente ispirato a quello di BSD, e tutte le configurazioni sono demandate a piccoli file testuali
  • modernità: Arch Linux è una distribuzione rolling release. Tutti i pacchetti disponibili per l’installazione sono sempre aggiornati all’ultima versione distribuita dagli autori (previa fase di testing). Questo la rende inadatta all’utilizzo in ambito server di produzione
  • velocità: ArchLinux è ottimizzato per architettura i686 e x86-64. Altre architetture (come i586) sono mantenute (non ufficialmente) dalla comunità

Sistema di gestione dei pacchetti

Arch Linux offre un sistema di gestione dei pacchetti molto semplice ed estremamente comodo. I pacchetti binari sono gestiti grazie a pacman che si occupa sia della sincronizzazione tra il repository locale e quelli ufficiali sia dell’installazione, rimozione e dell’aggiornamento. Pacman è il corrispettivo di dpkg e apt-get per Debian e derivate, come Ubuntu, oppure dnf per Red Hat Linux, Fedora o CentOS.

È dotato di un sistema di port in pieno stile BSD, chiamato ABS (Arch Linux Build System). Creare un pacchetto con ABS è piuttosto semplice:

  • è sufficiente creare un file (il PKGBUILD) contenente le istruzioni necessarie per scaricare i sorgenti e compilarli con un solo comando, makepkg.

Questo permette a chiunque di pacchettizzare software non ancora ufficialmente disponibili, mandando al package manager il compito della gestione di installazione/rimozione.

I file PKGBUILD hanno una struttura pulita e lineare,  con la filosofia della distribuzione, permettendo a qualsiasi utente di compilare sul proprio sistema tutto il software che desidera: difatti, le uniche conoscenze richieste sono i rudimenti dello shell scripting. Per l’installazione sono tuttavia necessari i privilegi di scrittura nell’intero sistema (di norma si usa sudo o l’utente root)

I pacchetti sono distribuiti in diversi repository:

  • core, che contiene i pacchetti essenziali del sistema operativo
  • extra, che contiene del software aggiuntivo
  • community, che contiene i pacchetti del repository comunitario di AUR (vedere sotto)
  • multilib, che contiene i pacchetti necessari per utilizzare applicazioni a 32 bit su un sistema a 64 bit

Sono inoltre abilitabili dei repositry di testing, che includono i pacchetti candidati per l’inclusione negli altri repository:

  • testing, che contiene i pacchetti da core ed extra
  • community-testing, che contiene i pacchetti da community
  • multilib-testing, che contiene i pacchetti da multilib

Esistono inoltre diversi repository non ufficiali, facilmente utilizzabili previa configurazione di Pacman (sempre tramite file di testo)

Arch Build System (ABS)

Ad ABS è demandata la gestione dei sorgenti. Tramite abs, l’utente è in grado di:

  • creare pacchetti personalizzati a partire dal codice sorgente
    ricompilare i pacchetti di Arch con le proprie personalizzazioni

Il tutto si limita a digitare il comando abs, che si occuperà di ricreare (all’interno della cartella /var/abs) una immagine locale dell’albero ABS del server principale, contenente i .PKGBUILD. La sincronizzazione avviene tramite il download diretto dei file in formato tarball oppure tramite rsync

Arch User Repository (AUR)

AUR è una peculiarità che distingue Arch Linux dalle altre distribuzioni. Si tratta di repository di pacchetti a cui tutti possono contribuire, anche chi non si occupa di sviluppo.

Se un determinato pacchetto non è presente nei repository ufficiali, chiunque ne avesse bisogno può scrivere il PKGBUILD di tale pacchetto e renderlo disponibile a tutti, caricandolo su AUR.

L’installazione tramite AUR avviene, infatti, scaricando il PKGBUILD piuttosto che il pacchetto, per poi compilarlo e installarlo secondo le linee guida di ABS. Per questioni di sicurezza, ovviamente, non è possibile includere direttamente pacchetti binari, che tutt’al più possono essere scaricati prima dell’installazione.

Esistono diversi sistemi automatici di creazione pacchetti a partire dall’AUR. I più conosciuti sono aurbuild e qpkg, che si occupano di scaricare gli archivi contenenti i PKGBUILD e gli altri file necessari, per poi compilare i sorgenti ed ottenere un pacchetto regolare. Inoltre, gestiscono un database locale dei pacchetti installati dall’AUR in modo da poter verificare la presenza di eventuali aggiornamenti e gestirli quasi con la stessa semplicità di pacman.

Trusted User

AUR contiene attualmente tutti i pacchetti compilabili creati dagli utenti. Fino al 2008,i pacchetti creati da un Trusted User (TU) risiedevano in un repository ad hocAd oggi, i Trusted Users svolgono un ruolo particolare in AUR: essi infatti sono gli unici a poter inviare pacchetti precompilati, occupandosi inoltre di verificare, ogniqualvolta un PKGBUILD viene aggiunto o modificato, che gli script presenti non siano potenzialmente dannosi per l’utente finale. In ogni caso, vista la semplicità della struttura dei PKGBUILD, anche chi compila un pacchetto può nella maggior parte dei casi rendersi conto della bontà dell’autore in pochi secondi. I pacchetti inviati dai TU possono essere aggiunti al repository community.

In data novembre 2013, sono presenti in AUR più di 40000 pacchetti,ed oltre 2000 disponibili in community,senza contare,quindi,i repository ufficiali.

Distribuzioni derivate:

Da Arch Linux sono nate diverse distribuzioni. Le più note sono riportate di seguito in ordine alfabetico.

  • Antergos (precedentemente Cinnarch), che porta di default il desktop environment GNOME 3
  • Arch Linux ARM, variante di Arch Linux per architetture ARM (v5, v6, v7, v8) diffuse sulle board di sviluppo
  • ArchBang, distribuzione con Openbox di default
  • Arch BSD, basata su kernel BSD
  • Arch Hurd, distribuzione basata sul kernel Hurd
  • ArkOS, distribuzione pensata principalmente per l’hosting di siti web e servizi (email, cloud, ecc…) tramite Raspberry Pi, con l’obiettivo di ridurre la dipendenza dai servizi cloud e rendere più difficile la raccolta dei dati
  • Apricity OS – utilizza i repository di Arch, il package manager Pamac, PushBullet, BTSync, ICE SSB manager, ed un DE Gnome modificato
  • Bridge Linux, distribuzione con installer grafico di Arch Linux. Presenta anche uno script post-installazione per aiutare gli utenti con le operazioni di prima configurazione. Disponibile con Xfce, GNOME, KDE e LXDE
  • Chakra, distribuzione con KDE come desktop environment
  • ConnochaetOS, distribuzione basata su Arch rivisitata per la piattaforma i586
  • Frugalware Linux, distribuzione con influenze di Slackware e con una versione rivisitata del gestore di pacchetti Pacman-G2
  • LinHES, distribuzione specializzata per la configurazione semplice del software PVR della MythTV
  • Manjaro Linux, distribuzione user friendly che utilizza di default XFCE, diverse personalizzazioni e patch, oltre a fare utilizzo predefinitamente di propri repository
  • Parabola GNU/Linux-libre, distribuzione contenente una versione totalmente libera del kernel Linux, chiamata Linux-libre, e supportata dalla Free Software Foundation